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 vector< CompositionTargetPass * >::type | TargetPasses
| Typedefs for several iterators. More...
typedef VectorIterator< TargetPasses > | TargetPassIterator
typedef VectorIterator< TextureDefinitions > | TextureDefinitionIterator
typedef vector< TextureDefinition * >::type | 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. More...
TextureDefinition * | createTextureDefinition (const String &name)
| Create a new local texture definition, and return a pointer to it. More...
const String & | getCompositorLogicName () const
| Get the compositor logic name assigned to this technique. More...
size_t | getNumTargetPasses ()
| Get the number of target passes. More...
size_t | getNumTextureDefinitions ()
| Get the number of local texture definitions. More...
CompositionTargetPass * | getOutputTargetPass ()
| Get output (final) target pass. More...
Compositor * | getParent ()
| Get parent object. More...
const String & | getSchemeName () const
| Get the scheme name assigned to this technique. More...
CompositionTargetPass * | getTargetPass (size_t idx)
| Get a target pass. More...
TargetPassIterator | getTargetPassIterator (void)
| Get an iterator over the TargetPasses in this Technique. More...
TextureDefinition * | getTextureDefinition (size_t idx)
| Get a local texture definition. More...
TextureDefinition * | getTextureDefinition (const String &name)
| Get a local texture definition with a specific name. More...
TextureDefinitionIterator | getTextureDefinitionIterator (void)
| Get an iterator over the TextureDefinitions in this Technique. More...
virtual bool | isSupported (bool allowTextureDegradation)
| Determine if this technique is supported on the current rendering device. More...
void | operator delete (void *ptr)
void | operator delete (void *ptr, void *)
void | operator delete (void *ptr, const char *, int, const char *)
void | operator delete[] (void *ptr)
void | operator delete[] (void *ptr, const char *, int, const char *)
void * | operator new (size_t sz, const char *file, int line, const char *func)
| operator new, with debug line info More...
void * | operator new (size_t sz)
void * | operator new (size_t sz, void *ptr)
| placement operator new More...
void * | operator new[] (size_t sz, const char *file, int line, const char *func)
| array operator new, with debug line info More...
void * | operator new[] (size_t sz)
void | removeAllTargetPasses ()
| Remove all target passes. More...
void | removeAllTextureDefinitions ()
| Remove all Texture Definitions. More...
void | removeTargetPass (size_t idx)
| Remove a target pass. More...
void | removeTextureDefinition (size_t idx)
| Remove and destroy a local texture definition. More...
void | setCompositorLogicName (const String &compositorLogicName)
| Set the name of the compositor logic assigned to this technique. More...
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. More...

## Private Attributes

String | mCompositorLogicName
| Optional compositor logic name. More...
CompositionTargetPass * | mOutputTarget
| Output target pass (can be only one) More...
Compositor * | mParent
| Parent compositor. More...
String | mSchemeName
| Optional scheme name. More...
TargetPasses | mTargetPasses
| Intermediate target passes. More...
TextureDefinitions | mTextureDefinitions
| Local texture definitions. More...

## Detailed Description

Base composition technique, can be subclassed in plugins.

Definition at line 45 of file OgreCompositionTechnique.h.

## Member Typedef Documentation

## TargetPasses

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

Typedefs for several iterators.

Definition at line 84 of file OgreCompositionTechnique.h.

## TargetPassIterator

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

Definition at line 85 of file OgreCompositionTechnique.h.

## TextureDefinitionIterator

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

Definition at line 87 of file OgreCompositionTechnique.h.

## TextureDefinitions

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

Definition at line 86 of file OgreCompositionTechnique.h.

## Member Enumeration Documentation

## TextureScope

enum Ogre::CompositionTechnique::TextureScope

Enumerator
TS_LOCAL |
TS_CHAIN |
TS_GLOBAL |

Definition at line 52 of file OgreCompositionTechnique.h.

## Constructor & Destructor Documentation

## CompositionTechnique()

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

## ~CompositionTechnique()

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

virtual

## Member Function Documentation

## createTargetPass()

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

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

## 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

## getCompositorLogicName()

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

Get the compositor logic name assigned to this technique.

Definition at line 162 of file OgreCompositionTechnique.h.

## getNumTargetPasses()

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

Get the number of target passes.

## getNumTextureDefinitions()

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

Get the number of local texture definitions.

## getOutputTargetPass()

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

Get output (final) target pass.

## getParent()

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

Get parent object.

## getSchemeName()

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

Get the scheme name assigned to this technique.

Definition at line 154 of file OgreCompositionTechnique.h.

## getTargetPass()

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

Get a target pass.

## getTargetPassIterator()

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

Get an iterator over the TargetPasses in this Technique.

## getTextureDefinition() [1/2]

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

Get a local texture definition.

## getTextureDefinition() [2/2]

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

Get a local texture definition with a specific name.

## getTextureDefinitionIterator()

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

Get an iterator over the TextureDefinitions in this Technique.

## 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

## operator delete() [1/3]

template<class Alloc >

void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr | ) |

inherited

Definition at line 96 of file OgreMemoryAllocatedObject.h.

## operator delete() [2/3]

template<class Alloc >

void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr,
|  | void * |
| ) |  |

inherited

Definition at line 102 of file OgreMemoryAllocatedObject.h.

## operator delete() [3/3]

template<class Alloc >

void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr,
|  | const char * | ,
|  | int | ,
|  | const char * |
| ) |  |

inherited

Definition at line 108 of file OgreMemoryAllocatedObject.h.

## operator delete[]() [1/2]

template<class Alloc >

void Ogre::AllocatedObject< Alloc >::operator delete[] | ( | void * | ptr | ) |

inherited

Definition at line 113 of file OgreMemoryAllocatedObject.h.

## operator delete[]() [2/2]

template<class Alloc >

void Ogre::AllocatedObject< Alloc >::operator delete[] | ( | void * | ptr,
|  | const char * | ,
|  | int | ,
|  | const char * |
| ) |  |

inherited

Definition at line 119 of file OgreMemoryAllocatedObject.h.

## operator new() [1/3]

template<class Alloc >

void* Ogre::AllocatedObject< Alloc >::operator new | ( | size_t | sz,
|  | const char * | file,
|  | int | line,
|  | const char * | func
| ) |  |

inherited

operator new, with debug line info

Definition at line 68 of file OgreMemoryAllocatedObject.h.

## operator new() [2/3]

template<class Alloc >

void* Ogre::AllocatedObject< Alloc >::operator new | ( | size_t | sz | ) |

inherited

Definition at line 73 of file OgreMemoryAllocatedObject.h.

## operator new() [3/3]

template<class Alloc >

void* Ogre::AllocatedObject< Alloc >::operator new | ( | size_t | sz,
|  | void * | ptr
| ) |  |

inherited

placement operator new

Definition at line 79 of file OgreMemoryAllocatedObject.h.

## operator new[]() [1/2]

template<class Alloc >

void* Ogre::AllocatedObject< Alloc >::operator new[] | ( | size_t | sz,
|  | const char * | file,
|  | int | line,
|  | const char * | func
| ) |  |

inherited

array operator new, with debug line info

Definition at line 86 of file OgreMemoryAllocatedObject.h.

## operator new[]() [2/2]

template<class Alloc >

void* Ogre::AllocatedObject< Alloc >::operator new[] | ( | size_t | sz | ) |

inherited

Definition at line 91 of file OgreMemoryAllocatedObject.h.

## removeAllTargetPasses()

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

Remove all target passes.

## removeAllTextureDefinitions()

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

Remove all Texture Definitions.

## removeTargetPass()

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

Remove a target pass.

It will also be destroyed.

## removeTextureDefinition()

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

Remove and destroy a local texture definition.

## setCompositorLogicName()

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

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

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

Definition at line 159 of file OgreCompositionTechnique.h.

## 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.

## Member Data Documentation

## mCompositorLogicName

String Ogre::CompositionTechnique::mCompositorLogicName

private

Optional compositor logic name.

Definition at line 181 of file OgreCompositionTechnique.h.

## mOutputTarget

CompositionTargetPass* Ogre::CompositionTechnique::mOutputTarget

private

Output target pass (can be only one)

Definition at line 175 of file OgreCompositionTechnique.h.

## mParent

Compositor* Ogre::CompositionTechnique::mParent

private

Parent compositor.

Definition at line 168 of file OgreCompositionTechnique.h.

## mSchemeName

String Ogre::CompositionTechnique::mSchemeName

private

Optional scheme name.

Definition at line 178 of file OgreCompositionTechnique.h.

## mTargetPasses

TargetPasses Ogre::CompositionTechnique::mTargetPasses

private

Intermediate target passes.

Definition at line 173 of file OgreCompositionTechnique.h.

## mTextureDefinitions

TextureDefinitions Ogre::CompositionTechnique::mTextureDefinitions

private

Local texture definitions.

Definition at line 170 of file OgreCompositionTechnique.h.

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

- OgreCompositionTechnique.h

Copyright © 2012 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.