OGRE: Ogre::Compositor Class Reference

| OGRE 14.5 Object-Oriented Graphics Rendering Engine

Loading...
Searching...
No Matches
Ogre::Compositor Class Referencefinal
Core » Effects

Class representing a Compositor object. More...

`#include <OgreCompositor.h>`

Inheritance diagram for Ogre::Compositor:
[legend]

## Public Types
typedef VectorIterator< Techniques > | TechniqueIterator
typedef std::vector< CompositionTechnique * > | Techniques
| Data types for internal lists.
Public Types inherited from Ogre::Resource
enum | LoadingFlags { LF_DEFAULT = 0 , LF_INCLUDE_NON_RELOADABLE = 1 , LF_ONLY_UNREFERENCED = 2 , LF_ONLY_UNREFERENCED_INCLUDE_NON_RELOADABLE = 3 , LF_PRESERVE_STATE = 4 }
| Enum that allow to choose subset of unloaded/reloaded resources and to adjust reloading behavior. More...
enum | LoadingState { LOADSTATE_UNLOADED , LOADSTATE_LOADING , LOADSTATE_LOADED , LOADSTATE_UNLOADING , LOADSTATE_PREPARED , LOADSTATE_PREPARING }
| Enum identifying the loading state of the resource. More...

## Public Member Functions
| Compositor (ResourceManager *creator, const String &name, ResourceHandle handle, const String &group, bool isManual=false, ManualResourceLoader *loader=0)
| ~Compositor ()
CompositionTechnique * | createTechnique ()
| Create a new technique, and return a pointer to it.
size_t | getNumSupportedTechniques () const
| Get the number of supported techniques.
size_t | getNumTechniques () const
| Get the number of techniques.
RenderTarget * | getRenderTarget (const String &name, int slice=0)
| Get the render target for a given render texture name.
CompositionTechnique * | getSupportedTechnique (const String &schemeName=BLANKSTRING)
| Get a pointer to a supported technique for a given scheme.
CompositionTechnique * | getSupportedTechnique (size_t idx) const
| Get a supported technique.
TechniqueIterator | getSupportedTechniqueIterator (void)
| Gets an iterator over all the Techniques which are supported by the current card.
CompositionTechnique * | getTechnique (size_t idx) const
| Get a technique.
TechniqueIterator | getTechniqueIterator (void)
| Get an iterator over the Techniques in this compositor.
const TexturePtr & | getTextureInstance (const String &name, size_t mrtIndex)
| Get the instance of a global texture.
const String & | getTextureInstanceName (const String &name, size_t mrtIndex)
| Get the instance name for a global texture.
void | removeAllTechniques ()
| Remove all techniques.
void | removeTechnique (size_t idx)
| Remove a technique.
Public Member Functions inherited from Ogre::Resource
| Resource (ResourceManager *creator, const String &name, ResourceHandle handle, const String &group, bool isManual=false, ManualResourceLoader *loader=0)
| Standard constructor.
virtual | ~Resource ()
| Virtual destructor.
virtual void | _dirtyState ()
| Manually mark the state of this resource as having been changed.
void | _fireLoadingComplete (bool unused=false)
| Firing of loading complete event.
void | _firePreparingComplete (bool unused=false)
| Firing of preparing complete event.
void | _fireUnloadingComplete (void)
| Firing of unloading complete event.
void | _notifyOrigin (const String &origin)
| Notify this resource of it's origin.
virtual void | addListener (Listener *lis)
| Register a listener on this resource.
virtual void | changeGroupOwnership (const String &newGroup)
| Change the resource group ownership of a Resource.
virtual void | escalateLoading ()
| Escalates the loading of a background loaded resource.
ResourceManager * | getCreator (void)
| Gets the manager which created this resource.
const String & | getGroup (void) const
| Gets the group which this resource is a member of.
ResourceHandle | getHandle (void) const
LoadingState | getLoadingState () const
| Returns the current loading state.
const String & | getName (void) const
| Gets resource name.
const String & | getOrigin (void) const
| Get the origin of this resource, e.g.
size_t | getSize (void) const
| Retrieves info about the size of the resource.
virtual size_t | getStateCount () const
| Returns the number of times this resource has changed state, which generally means the number of times it has been loaded.
bool | isBackgroundLoaded (void) const
| Returns whether this Resource has been earmarked for background loading.
bool | isLoaded (void) const
| Returns true if the Resource has been loaded, false otherwise.
bool | isLoading () const
| Returns whether the resource is currently in the process of background loading.
bool | isManuallyLoaded (void) const
| Is this resource manually loaded?
bool | isPrepared (void) const
| Returns true if the Resource has been prepared, false otherwise.
bool | isReloadable (void) const
| Returns true if the Resource is reloadable, false otherwise.
virtual void | load (bool backgroundThread=false)
| Loads the resource, if it is not already.
virtual void | prepare (bool backgroundThread=false)
| Prepares the resource for load, if it is not already.
virtual void | reload (LoadingFlags flags=LF_DEFAULT)
| Reloads the resource, if it is already loaded.
virtual void | removeListener (Listener *lis)
| Remove a listener on this resource.
void | setBackgroundLoaded (bool bl)
| Tells the resource whether it is background loaded or not.
virtual void | touch (void)
| 'Touches' the resource to indicate it has been used.
virtual void | unload (void)
| Unloads the resource; this is not permanent, the resource can be reloaded later if required.
Public Member Functions inherited from Ogre::StringInterface
| StringInterface ()
virtual | ~StringInterface ()
| Virtual destructor, see Effective C++.
void | copyParametersTo (StringInterface *dest) const
| Method for copying this object's parameters to another object.
ParamDictionary * | getParamDictionary (void)
| Retrieves the parameter dictionary for this class.
const ParamDictionary * | getParamDictionary (void) const
String | getParameter (const String &name) const
| Generic parameter retrieval method.
const ParameterList & | getParameters (void) const
| Retrieves a list of parameters valid for this object.
bool | setParameter (const String &name, const String &value)
| Generic parameter setting method.
void | setParameterList (const NameValuePairList &paramList)
| Generic multiple parameter setting method.

## Additional Inherited Members
Static Public Member Functions inherited from Ogre::StringInterface
static void | cleanupDictionary ()
| Cleans up the static 'msDictionary' required to reset Ogre, otherwise the containers are left with invalid pointers, which will lead to a crash as soon as one of the ResourceManager implementers (e.g.

## Detailed Description

Class representing a Compositor object.

Compositors provide the means to flexibly "composite" the final rendering result from multiple scene renders and intermediate operations like rendering fullscreen quads. This makes it possible to apply postfilter effects, HDRI postprocessing, and shadow effects to a Viewport.

## Member Typedef Documentation

## ◆ Techniques

typedef std::vector<CompositionTechnique *> Ogre::Compositor::Techniques

Data types for internal lists.

## ◆ TechniqueIterator

typedef VectorIterator<Techniques> Ogre::Compositor::TechniqueIterator

## Constructor & Destructor Documentation

## ◆ Compositor()

Ogre::Compositor::Compositor | ( | ResourceManager * | creator,
|  | const String & | name,
|  | ResourceHandle | handle,
|  | const String & | group,
|  | bool | isManual = false,
|  | ManualResourceLoader * | loader = 0 )

## ◆ ~Compositor()

Ogre::Compositor::~Compositor | ( |  | ) |

## Member Function Documentation

## ◆ createTechnique()

CompositionTechnique * Ogre::Compositor::createTechnique | ( |  | ) |

Create a new technique, and return a pointer to it.

## ◆ removeTechnique()

void Ogre::Compositor::removeTechnique | ( | size_t | idx | ) |

Remove a technique.

It will also be destroyed.

## ◆ getTechnique()

CompositionTechnique * Ogre::Compositor::getTechnique | ( | size_t | idx | ) | const
| inline

Get a technique.

## ◆ getNumTechniques()

size_t Ogre::Compositor::getNumTechniques | ( |  | ) | const
| inline

Get the number of techniques.

## ◆ removeAllTechniques()

void Ogre::Compositor::removeAllTechniques | ( |  | ) |

Remove all techniques.

## ◆ getTechniqueIterator()

TechniqueIterator Ogre::Compositor::getTechniqueIterator | ( | void |  | ) |

Get an iterator over the Techniques in this compositor.

## ◆ getSupportedTechnique() [1/2]

CompositionTechnique * Ogre::Compositor::getSupportedTechnique | ( | size_t | idx | ) | const
| inline

Get a supported technique.

The supported technique list is only available after this compositor has been compiled, which typically happens on loading it. Therefore, if this method returns an empty list, try calling Compositor::load.

## ◆ getNumSupportedTechniques()

size_t Ogre::Compositor::getNumSupportedTechniques | ( |  | ) | const
| inline

Get the number of supported techniques.

The supported technique list is only available after this compositor has been compiled, which typically happens on loading it. Therefore, if this method returns an empty list, try calling Compositor::load.

## ◆ getSupportedTechniqueIterator()

TechniqueIterator Ogre::Compositor::getSupportedTechniqueIterator | ( | void |  | ) |

Gets an iterator over all the Techniques which are supported by the current card.

The supported technique list is only available after this compositor has been compiled, which typically happens on loading it. Therefore, if this method returns an empty list, try calling Compositor::load.

## ◆ getSupportedTechnique() [2/2]

CompositionTechnique * Ogre::Compositor::getSupportedTechnique | ( | const String & | schemeName = BLANKSTRING | ) |

Get a pointer to a supported technique for a given scheme.

If there is no specific supported technique with this scheme name, then the first supported technique with no specific scheme will be returned.

Parameters

  schemeName | The scheme name you are looking for. Blank means to look for techniques with no scheme associated

References Ogre::BLANKSTRING.

## ◆ getTextureInstanceName()

const String & Ogre::Compositor::getTextureInstanceName | ( | const String & | name,
|  | size_t | mrtIndex )

Get the instance name for a global texture.

Parameters

  name | The name of the texture in the original compositor definition
  mrtIndex | If name identifies a MRT, which texture attachment to retrieve

Returns
  The instance name for the texture, corresponds to a real texture

## ◆ getTextureInstance()

const TexturePtr & Ogre::Compositor::getTextureInstance | ( | const String & | name,
|  | size_t | mrtIndex )

Get the instance of a global texture.

Parameters

  name | The name of the texture in the original compositor definition
  mrtIndex | If name identifies a MRT, which texture attachment to retrieve

Returns
  The texture pointer, corresponds to a real texture

## ◆ getRenderTarget()

RenderTarget * Ogre::Compositor::getRenderTarget | ( | const String & | name,
|  | int | slice = 0 )

Get the render target for a given render texture name.

You can use this to add listeners etc, but do not use it to update the targets manually or any other modifications, the compositor instance is in charge of this.

The documentation for this class was generated from the following file:

- OgreCompositor.h