Base composition technique, can be subclassed in plugins. More...
#include <OgreCompositionTechnique.h>
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... | |
Base composition technique, can be subclassed in plugins.
Definition at line 45 of file OgreCompositionTechnique.h.
typedef vector<CompositionTargetPass *>::type Ogre::CompositionTechnique::TargetPasses |
Typedefs for several iterators.
Definition at line 84 of file OgreCompositionTechnique.h.
Definition at line 85 of file OgreCompositionTechnique.h.
Definition at line 87 of file OgreCompositionTechnique.h.
typedef vector<TextureDefinition*>::type Ogre::CompositionTechnique::TextureDefinitions |
Definition at line 86 of file OgreCompositionTechnique.h.
Enumerator | |
---|---|
TS_LOCAL | |
TS_CHAIN | |
TS_GLOBAL |
Definition at line 52 of file OgreCompositionTechnique.h.
Ogre::CompositionTechnique::CompositionTechnique | ( | Compositor * | parent | ) |
|
virtual |
CompositionTargetPass* Ogre::CompositionTechnique::createTargetPass | ( | ) |
Create a new target pass, and return a pointer to it.
TextureDefinition* Ogre::CompositionTechnique::createTextureDefinition | ( | const String & | name | ) |
Create a new local texture definition, and return a pointer to it.
name | Name of the local texture |
|
inline |
Get the compositor logic name assigned to this technique.
Definition at line 162 of file OgreCompositionTechnique.h.
size_t Ogre::CompositionTechnique::getNumTargetPasses | ( | ) |
Get the number of target passes.
size_t Ogre::CompositionTechnique::getNumTextureDefinitions | ( | ) |
Get the number of local texture definitions.
CompositionTargetPass* Ogre::CompositionTechnique::getOutputTargetPass | ( | ) |
Get output (final) target pass.
Compositor* Ogre::CompositionTechnique::getParent | ( | ) |
Get parent object.
|
inline |
Get the scheme name assigned to this technique.
Definition at line 154 of file OgreCompositionTechnique.h.
CompositionTargetPass* Ogre::CompositionTechnique::getTargetPass | ( | size_t | idx | ) |
Get a target pass.
TargetPassIterator Ogre::CompositionTechnique::getTargetPassIterator | ( | void | ) |
Get an iterator over the TargetPasses in this Technique.
TextureDefinition* Ogre::CompositionTechnique::getTextureDefinition | ( | size_t | idx | ) |
Get a local texture definition.
TextureDefinition* Ogre::CompositionTechnique::getTextureDefinition | ( | const String & | name | ) |
Get a local texture definition with a specific name.
TextureDefinitionIterator Ogre::CompositionTechnique::getTextureDefinitionIterator | ( | void | ) |
Get an iterator over the TextureDefinitions in this Technique.
|
virtual |
Determine if this technique is supported on the current rendering device.
allowTextureDegradation | True to accept a reduction in texture depth |
|
inlineinherited |
Definition at line 96 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
Definition at line 102 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
Definition at line 108 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
Definition at line 113 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
Definition at line 119 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
operator new, with debug line info
Definition at line 68 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
Definition at line 73 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
placement operator new
Definition at line 79 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
array operator new, with debug line info
Definition at line 86 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
Definition at line 91 of file OgreMemoryAllocatedObject.h.
void Ogre::CompositionTechnique::removeAllTargetPasses | ( | ) |
Remove all target passes.
void Ogre::CompositionTechnique::removeAllTextureDefinitions | ( | ) |
Remove all Texture Definitions.
void Ogre::CompositionTechnique::removeTargetPass | ( | size_t | idx | ) |
Remove a target pass.
It will also be destroyed.
void Ogre::CompositionTechnique::removeTextureDefinition | ( | size_t | idx | ) |
Remove and destroy a local texture definition.
|
inline |
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.
|
virtual |
Assign a scheme name to this technique, used to switch between multiple techniques by choice rather than for hardware compatibility.
|
private |
Optional compositor logic name.
Definition at line 181 of file OgreCompositionTechnique.h.
|
private |
Output target pass (can be only one)
Definition at line 175 of file OgreCompositionTechnique.h.
|
private |
Parent compositor.
Definition at line 168 of file OgreCompositionTechnique.h.
|
private |
Optional scheme name.
Definition at line 178 of file OgreCompositionTechnique.h.
|
private |
Intermediate target passes.
Definition at line 173 of file OgreCompositionTechnique.h.
|
private |
Local texture definitions.
Definition at line 170 of file OgreCompositionTechnique.h.