Classes | Public Types | Public Member Functions | Private Attributes | List of all members
Ogre::CompositionTechnique Class Reference

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

#include <OgreCompositionTechnique.h>

Inheritance diagram for Ogre::CompositionTechnique:
Inheritance graph
[legend]

Classes

class  TextureDefinition
 Local texture definition. More...
 

Public Types

typedef vector< CompositionTargetPass * >::type TargetPasses
 Typedefs for several iterators. More...
 
typedef VectorIterator< TargetPassesTargetPassIterator
 
typedef VectorIterator< TextureDefinitionsTextureDefinitionIterator
 
typedef vector< TextureDefinition * >::type TextureDefinitions
 
enum  TextureScope { TS_LOCAL, TS_CHAIN, TS_GLOBAL }
 

Public Member Functions

 CompositionTechnique (Compositor *parent)
 
virtual ~CompositionTechnique ()
 
CompositionTargetPasscreateTargetPass ()
 Create a new target pass, and return a pointer to it. More...
 
TextureDefinitioncreateTextureDefinition (const String &name)
 Create a new local texture definition, and return a pointer to it. More...
 
const StringgetCompositorLogicName () 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...
 
CompositionTargetPassgetOutputTargetPass ()
 Get output (final) target pass. More...
 
CompositorgetParent ()
 Get parent object. More...
 
const StringgetSchemeName () const
 Get the scheme name assigned to this technique. More...
 
CompositionTargetPassgetTargetPass (size_t idx)
 Get a target pass. More...
 
TargetPassIterator getTargetPassIterator (void)
 Get an iterator over the TargetPasses in this Technique. More...
 
TextureDefinitiongetTextureDefinition (const String &name)
 Get a local texture definition with a specific name. More...
 
TextureDefinitiongetTextureDefinition (size_t idx)
 Get a local texture definition. 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, const char *, int, const char *)
 
void operator delete (void *ptr, void *)
 
void operator delete[] (void *ptr)
 
void operator delete[] (void *ptr, const char *, int, const char *)
 
void * operator new (size_t sz)
 
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 *ptr)
 placement operator new More...
 
void * operator new[] (size_t sz)
 
void * operator new[] (size_t sz, const char *file, int line, const char *func)
 array operator new, with debug line info More...
 
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...
 
CompositionTargetPassmOutputTarget
 Output target pass (can be only one) More...
 
CompositormParent
 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

Typedefs for several iterators.

Definition at line 84 of file OgreCompositionTechnique.h.

◆ TargetPassIterator

Definition at line 85 of file OgreCompositionTechnique.h.

◆ TextureDefinitionIterator

Definition at line 87 of file OgreCompositionTechnique.h.

◆ TextureDefinitions

Definition at line 86 of file OgreCompositionTechnique.h.

Member Enumeration Documentation

◆ 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
nameName 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 ( const String name)

Get a local texture definition with a specific name.

◆ getTextureDefinition() [2/2]

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

Get a local texture definition.

◆ 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
allowTextureDegradationTrue 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,
const char *  ,
int  ,
const char *   
)
inherited

Definition at line 108 of file OgreMemoryAllocatedObject.h.

◆ operator delete() [3/3]

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete ( void *  ptr,
void *   
)
inherited

Definition at line 102 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)
inherited

Definition at line 73 of file OgreMemoryAllocatedObject.h.

◆ operator new() [2/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() [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)
inherited

Definition at line 91 of file OgreMemoryAllocatedObject.h.

◆ operator new[]() [2/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.

◆ 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:

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