Go to the documentation of this file.
28 #ifndef __CompositorManager_H__
29 #define __CompositorManager_H__
244 : width(w), height(h), format(f), fsaa(aa), fsaaHint(aaHint), sRGBwrite(srgb)
unsigned long long int ResourceHandle
map< String, CompositorLogic * >::type CompositorLogicMap
Map of registered compositor logics.
void setCompositorEnabled(Viewport *vp, const String &compositor, bool value)
Set the state of a compositor on a viewport to enabled or disabled.
bool hasCompositorChain(Viewport *vp) const
Returns whether exists compositor chain for a viewport.
void freePooledTextures(bool onlyIfUnreferenced=true)
Free pooled textures from the shared pool (compositor instances still using them will keep them in me...
static CompositorManager & getSingleton(void)
Override standard Singleton retrieval.
Chain of compositor effects applying to one viewport.
TexturePtr getPooledTexture(const String &name, const String &localName, size_t w, size_t h, PixelFormat f, uint aa, const String &aaHint, bool srgb, UniqueTextureSet &texturesAlreadyAssigned, CompositorInstance *inst, CompositionTechnique::TextureScope scope)
Utility function to get an existing pooled texture matching a given definition, or creating one if on...
static CompositorManager * getSingletonPtr(void)
Override standard Singleton retrieval.
vector< CompositorInstance * >::type Instances
List of instances.
CustomCompositionPass * getCustomCompositionPass(const String &name)
Get a custom composition pass by its name.
Concrete IteratorWrapper for nonconst access to the underlying container.
vector< TexturePtr >::type TextureList
CompositorInstance * addCompositor(Viewport *vp, const String &compositor, int addPosition=-1)
Add a compositor to a viewport.
TexturesByDef mTexturesByDef
static String AUTODETECT_RESOURCE_GROUP_NAME
Special resource group name which causes resource group to be automatically determined based on searc...
bool isInputPreviousTarget(CompositorInstance *inst, const Ogre::String &localName)
CompositorLogic * getCompositorLogic(const String &name)
Get a compositor logic by its name.
Class for managing Compositor settings for Ogre.
CustomCompositionPassMap mCustomCompositionPasses
map< TextureDef, TextureList *, TextureDefLess >::type TexturesByDef
map< String, String >::type NameValuePairList
Name / value parameter pair (first = name, second = value)
map< String, CustomCompositionPass * >::type CustomCompositionPassMap
Map of registered custom composition passes.
VectorIterator< TextureList > TextureIterator
CompositorLogicMap mCompositorLogics
bool _OgreExport operator()(const TextureDef &x, const TextureDef &y) const
set< Texture * >::type UniqueTextureSet
void removeCompositor(Viewport *vp, const String &compositor)
Remove a compositor from a viewport.
PixelFormat
The pixel format used for images, textures, and render surfaces.
An abstraction of a viewport, i.e.
Interface for compositor logics, which can be automatically binded to compositors,...
virtual ~TextureDefLess()
bool isInputToOutputTarget(CompositorInstance *inst, const Ogre::String &localName)
void removeAll(void)
Overridden from ResourceManager since we have to clean up chains too.
ChainTexturesByDef mChainTexturesByDef
map< TextureDef, TexturePtr, TextureDefLess >::type TextureDefMap
Template class for creating single-instance global classes.
void unregisterCompositorLogic(const String &name)
Removes a listener for compositor logic registered with registerCompositorLogic.
map< StringPair, TextureDefMap >::type ChainTexturesByDef
virtual ~CompositorManager()
Defines a generic resource handler.
void removeCompositorChain(Viewport *vp)
Remove the compositor chain from a viewport if exists.
Reference-counted shared pointer, used for objects where implicit destruction is required.
Abstract class representing a loadable resource (e.g.
CompositorPtr getByName(const String &name, const String &groupName=ResourceGroupManager::AUTODETECT_RESOURCE_GROUP_NAME)
Get a resource by name.
std::map< K, V, P, A > type
void freeChains()
Clear composition chains for all viewports.
void registerCustomCompositionPass(const String &name, CustomCompositionPass *customPass)
Register a custom composition pass.
void parseScript(DataStreamPtr &stream, const String &groupName)
Abstract class defining the interface all renderable objects must implement.
Allows the rendering of a simple 2D rectangle This class renders a simple 2D rectangle; this rectangl...
Renderable * _getTexturedRectangle2D()
Get a textured fullscreen 2D rectangle, for internal use.
std::pair< String, String > StringPair
An instance of a Compositor object for one Viewport.
bool isInputToOutputTarget(CompositorInstance *inst, TexturePtr tex)
Resource * createImpl(const String &name, ResourceHandle handle, const String &group, bool isManual, ManualResourceLoader *loader, const NameValuePairList *params)
Overridden from ResourceManager.
map< Viewport *, CompositorChain * >::type Chains
void _reconstructAllCompositorResources()
Internal method for forcing all active compositors to recreate their resources.
CompositorChain * getCompositorChain(Viewport *vp)
Get the compositor chain for a Viewport.
Interface describing a manual resource loader.
bool isInputPreviousTarget(CompositorInstance *inst, TexturePtr tex)
CompositorPtr create(const String &name, const String &group, bool isManual=false, ManualResourceLoader *loader=0, const NameValuePairList *createParams=0)
Create a new compositor.
void registerCompositorLogic(const String &name, CompositorLogic *logic)
Register a compositor logic for listening in to expecting composition techniques.
void initialise(void)
Initialises the Compositor manager, which also triggers it to parse all available ....
Interface for custom composition passes, allowing custom operations (in addition to the quad,...
TextureDef(size_t w, size_t h, PixelFormat f, uint aa, const String &aaHint, bool srgb)
Copyright © 2012 Torus Knot Software Ltd

This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.