OGRE: Ogre::CompositionTechnique Class Reference

| OGRE 14.5 Object-Oriented Graphics Rendering Engine

Loading...
Searching...
No Matches
Ogre::CompositionTechnique Class Reference
Core » Effects

Base composition technique, can be subclassed in plugins. More...

`#include <OgreCompositionTechnique.h>`

Inheritance diagram for Ogre::CompositionTechnique:
[legend]

## Classes
class | TextureDefinition
| Local texture definition. More...

## Public Types
typedef std::vector< CompositionTargetPass * > | TargetPasses
| Typedefs for several iterators.
typedef VectorIterator< TargetPasses > | TargetPassIterator
typedef VectorIterator< TextureDefinitions > | TextureDefinitionIterator
typedef std::vector< TextureDefinition * > | TextureDefinitions
enum | TextureScope { TS_LOCAL , TS_CHAIN , TS_GLOBAL }

## Public Member Functions
| CompositionTechnique (Compositor *parent)
virtual | ~CompositionTechnique ()
CompositionTargetPass * | createTargetPass ()
| Create a new target pass, and return a pointer to it.
TextureDefinition * | createTextureDefinition (const String &name)
| Create a new local texture definition, and return a pointer to it.
const String & | getCompositorLogicName () const
| Get the compositor logic name assigned to this technique.
size_t | getNumTargetPasses () const
| Get the number of target passes.
size_t | getNumTextureDefinitions () const
| Get the number of local texture definitions.
CompositionTargetPass * | getOutputTargetPass () const
| Get output (final) target pass.
Compositor * | getParent ()
| Get parent object.
const String & | getSchemeName () const
| Get the scheme name assigned to this technique.
CompositionTargetPass * | getTargetPass (size_t idx) const
| Get a target pass.
const TargetPasses & | getTargetPasses () const
| Get the TargetPasses in this Technique.
TargetPassIterator | getTargetPassIterator (void)
TextureDefinition * | getTextureDefinition (const String &name) const
| Get a local texture definition with a specific name.
TextureDefinition * | getTextureDefinition (size_t idx) const
| Get a local texture definition.
TextureDefinitionIterator | getTextureDefinitionIterator (void)
const TextureDefinitions & | getTextureDefinitions () const
| Get the TextureDefinitions in this Technique.
virtual bool | isSupported (bool allowTextureDegradation)
| Determine if this technique is supported on the current rendering device.
void | removeAllTargetPasses ()
| Remove all target passes.
void | removeAllTextureDefinitions ()
| Remove all Texture Definitions.
void | removeTargetPass (size_t idx)
| Remove a target pass.
void | removeTextureDefinition (size_t idx)
| Remove and destroy a local texture definition.
void | setCompositorLogicName (const String &compositorLogicName)
| Set the name of the compositor logic assigned to this technique.
virtual void | setSchemeName (const String &schemeName)
| Assign a scheme name to this technique, used to switch between multiple techniques by choice rather than for hardware compatibility.

## Detailed Description

Base composition technique, can be subclassed in plugins.

## Member Typedef Documentation

## ◆ TargetPasses

typedef std::vector<CompositionTargetPass *> Ogre::CompositionTechnique::TargetPasses

Typedefs for several iterators.

## ◆ TargetPassIterator

typedef VectorIterator<TargetPasses> Ogre::CompositionTechnique::TargetPassIterator

## ◆ TextureDefinitions

typedef std::vector<TextureDefinition*> Ogre::CompositionTechnique::TextureDefinitions

## ◆ TextureDefinitionIterator

typedef VectorIterator<TextureDefinitions> Ogre::CompositionTechnique::TextureDefinitionIterator

## Member Enumeration Documentation

## ◆ TextureScope

enum Ogre::CompositionTechnique::TextureScope

Enumerator
TS_LOCAL |
TS_CHAIN |
TS_GLOBAL |

## Constructor & Destructor Documentation

## ◆ CompositionTechnique()

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

## ◆ ~CompositionTechnique()

virtual Ogre::CompositionTechnique::~CompositionTechnique | ( |  | ) |
| virtual

## Member Function Documentation

## ◆ createTextureDefinition()

TextureDefinition * Ogre::CompositionTechnique::createTextureDefinition | ( | const String & | name | ) |

Create a new local texture definition, and return a pointer to it.

Parameters

  name | Name of the local texture

## ◆ removeTextureDefinition()

void Ogre::CompositionTechnique::removeTextureDefinition | ( | size_t | idx | ) |

Remove and destroy a local texture definition.

## ◆ getTextureDefinition() [1/2]

TextureDefinition * Ogre::CompositionTechnique::getTextureDefinition | ( | size_t | idx | ) | const
| inline

Get a local texture definition.

## ◆ getTextureDefinition() [2/2]

TextureDefinition * Ogre::CompositionTechnique::getTextureDefinition | ( | const String & | name | ) | const

Get a local texture definition with a specific name.

## ◆ getNumTextureDefinitions()

size_t Ogre::CompositionTechnique::getNumTextureDefinitions | ( |  | ) | const
| inline

Get the number of local texture definitions.

## ◆ removeAllTextureDefinitions()

void Ogre::CompositionTechnique::removeAllTextureDefinitions | ( |  | ) |

Remove all Texture Definitions.

## ◆ getTextureDefinitions()

const TextureDefinitions & Ogre::CompositionTechnique::getTextureDefinitions | ( |  | ) | const
| inline

Get the TextureDefinitions in this Technique.

## ◆ getTextureDefinitionIterator()

TextureDefinitionIterator Ogre::CompositionTechnique::getTextureDefinitionIterator | ( | void |  | ) |

Deprecated
  use getTextureDefinitions()

## ◆ createTargetPass()

CompositionTargetPass * Ogre::CompositionTechnique::createTargetPass | ( |  | ) |

Create a new target pass, and return a pointer to it.

## ◆ removeTargetPass()

void Ogre::CompositionTechnique::removeTargetPass | ( | size_t | idx | ) |

Remove a target pass.

It will also be destroyed.

## ◆ getTargetPass()

CompositionTargetPass * Ogre::CompositionTechnique::getTargetPass | ( | size_t | idx | ) | const
| inline

Get a target pass.

## ◆ getNumTargetPasses()

size_t Ogre::CompositionTechnique::getNumTargetPasses | ( |  | ) | const
| inline

Get the number of target passes.

## ◆ removeAllTargetPasses()

void Ogre::CompositionTechnique::removeAllTargetPasses | ( |  | ) |

Remove all target passes.

## ◆ getTargetPasses()

const TargetPasses & Ogre::CompositionTechnique::getTargetPasses | ( |  | ) | const
| inline

Get the TargetPasses in this Technique.

## ◆ getTargetPassIterator()

TargetPassIterator Ogre::CompositionTechnique::getTargetPassIterator | ( | void |  | ) |

Deprecated
  use getTargetPasses()

## ◆ getOutputTargetPass()

CompositionTargetPass * Ogre::CompositionTechnique::getOutputTargetPass | ( |  | ) | const
| inline

Get output (final) target pass.

## ◆ isSupported()

virtual bool Ogre::CompositionTechnique::isSupported | ( | bool | allowTextureDegradation | ) |
| virtual

Determine if this technique is supported on the current rendering device.

Parameters

  allowTextureDegradation | True to accept a reduction in texture depth

## ◆ setSchemeName()

virtual void Ogre::CompositionTechnique::setSchemeName | ( | const String & | schemeName | ) |
| virtual

Assign a scheme name to this technique, used to switch between multiple techniques by choice rather than for hardware compatibility.

## ◆ getSchemeName()

const String & Ogre::CompositionTechnique::getSchemeName | ( |  | ) | const
| inline

Get the scheme name assigned to this technique.

## ◆ setCompositorLogicName()

void Ogre::CompositionTechnique::setCompositorLogicName | ( | const String & | compositorLogicName | ) |
| inline

Set the name of the compositor logic assigned to this technique.

Instances of this technique will be auto-coupled with the matching logic.

## ◆ getCompositorLogicName()

const String & Ogre::CompositionTechnique::getCompositorLogicName | ( |  | ) | const
| inline

Get the compositor logic name assigned to this technique.

## ◆ getParent()

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

Get parent object.

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

- OgreCompositionTechnique.h