Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File 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]
List of all members.

Public Types

typedef std::vector< CompositionTargetPass * > TargetPasses
 Typedefs for several iterators.
typedef VectorIterator< TargetPassesTargetPassIterator
typedef std::vector< TextureDefinition * > TextureDefinitions
typedef VectorIterator< TextureDefinitionsTextureDefinitionIterator

Public Member Functions

 CompositionTechnique (Compositor *parent)
virtual ~CompositionTechnique ()
TextureDefinitioncreateTextureDefinition (const String &name)
 Create a new local texture definition, and return a pointer to it.
void removeTextureDefinition (size_t idx)
 Remove and destroy a local texture definition.
TextureDefinitiongetTextureDefinition (size_t idx)
 Get a local texture definition.
size_t getNumTextureDefinitions ()
 Get the number of local texture definitions.
void removeAllTextureDefinitions ()
 Remove all Texture Definitions.
TextureDefinitionIterator getTextureDefinitionIterator (void)
 Get an iterator over the TextureDefinitions in this Technique.
CompositionTargetPasscreateTargetPass ()
 Create a new target pass, and return a pointer to it.
void removeTargetPass (size_t idx)
 Remove a target pass.
CompositionTargetPassgetTargetPass (size_t idx)
 Get a target pass.
size_t getNumTargetPasses ()
 Get the number of target passes.
void removeAllTargetPasses ()
 Remove all target passes.
TargetPassIterator getTargetPassIterator (void)
 Get an iterator over the TargetPasses in this Technique.
CompositionTargetPassgetOutputTargetPass ()
 Get output (final) target pass.
virtual bool isSupported (bool allowTextureDegradation)
 Determine if this technique is supported on the current rendering device.
virtual CompositorInstancecreateInstance (CompositorChain *chain)
 Create an instance of this technique.
virtual void destroyInstance (CompositorInstance *instance)
 Destroy an instance of this technique.
CompositorgetParent ()
 Get parent object.
 AllocatedObject ()
void * operator new (size_t sz, const char *file, int line, const char *func)
 operator new, with debug line info
void * operator new (size_t sz)
void * operator new (size_t sz, void *ptr)
 placement operator new
void * operator new[] (size_t sz, const char *file, int line, const char *func)
 array operator new, with debug line info
void * operator new[] (size_t sz)
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 *)

Private Types

typedef std::vector< CompositorInstance * > Instances
 List of instances.

Private Attributes

CompositormParent
 Parent compositor.
TextureDefinitions mTextureDefinitions
 Local texture definitions.
TargetPasses mTargetPasses
 Intermediate target passes.
CompositionTargetPassmOutputTarget
 Output target pass (can be only one).
Instances mInstances

Classes

class  TextureDefinition
 Local texture definition. More...

Detailed Description

Base composition technique, can be subclassed in plugins.

Definition at line 39 of file OgreCompositionTechnique.h.


Member Typedef Documentation

typedef std::vector<CompositorInstance *> Ogre::CompositionTechnique::Instances [private]
 

List of instances.

Definition at line 142 of file OgreCompositionTechnique.h.

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

Typedefs for several iterators.

Definition at line 59 of file OgreCompositionTechnique.h.

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

Definition at line 60 of file OgreCompositionTechnique.h.

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

Definition at line 62 of file OgreCompositionTechnique.h.

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

Definition at line 61 of file OgreCompositionTechnique.h.


Constructor & Destructor Documentation

Ogre::CompositionTechnique::CompositionTechnique Compositor parent  ) 
 

virtual Ogre::CompositionTechnique::~CompositionTechnique  )  [virtual]
 


Member Function Documentation

Ogre::AllocatedObject< ResourceAllocPolicy >::AllocatedObject  )  [explicit, inherited]
 

Definition at line 55 of file OgreMemoryAllocatedObject.h.

virtual CompositorInstance* Ogre::CompositionTechnique::createInstance CompositorChain chain  )  [virtual]
 

Create an instance of this technique.

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.

Parameters:
name Name of the local texture

virtual void Ogre::CompositionTechnique::destroyInstance CompositorInstance instance  )  [virtual]
 

Destroy an instance of this technique.

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.

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.

TextureDefinitionIterator Ogre::CompositionTechnique::getTextureDefinitionIterator void   ) 
 

Get an iterator over the TextureDefinitions in this Technique.

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

void Ogre::AllocatedObject< ResourceAllocPolicy >::operator delete void *  ptr,
const char *  ,
int  ,
const char * 
[inherited]
 

Definition at line 101 of file OgreMemoryAllocatedObject.h.

void Ogre::AllocatedObject< ResourceAllocPolicy >::operator delete void *  ptr,
void * 
[inherited]
 

Definition at line 95 of file OgreMemoryAllocatedObject.h.

void Ogre::AllocatedObject< ResourceAllocPolicy >::operator delete void *  ptr  )  [inherited]
 

Definition at line 89 of file OgreMemoryAllocatedObject.h.

void Ogre::AllocatedObject< ResourceAllocPolicy >::operator delete[] void *  ptr,
const char *  ,
int  ,
const char * 
[inherited]
 

Definition at line 112 of file OgreMemoryAllocatedObject.h.

void Ogre::AllocatedObject< ResourceAllocPolicy >::operator delete[] void *  ptr  )  [inherited]
 

Definition at line 106 of file OgreMemoryAllocatedObject.h.

void* Ogre::AllocatedObject< ResourceAllocPolicy >::operator new size_t  sz,
void *  ptr
[inherited]
 

placement operator new

Definition at line 73 of file OgreMemoryAllocatedObject.h.

void* Ogre::AllocatedObject< ResourceAllocPolicy >::operator new size_t  sz  )  [inherited]
 

Definition at line 67 of file OgreMemoryAllocatedObject.h.

void* Ogre::AllocatedObject< ResourceAllocPolicy >::operator new size_t  sz,
const char *  file,
int  line,
const char *  func
[inherited]
 

operator new, with debug line info

Definition at line 62 of file OgreMemoryAllocatedObject.h.

void* Ogre::AllocatedObject< ResourceAllocPolicy >::operator new[] size_t  sz  )  [inherited]
 

Definition at line 84 of file OgreMemoryAllocatedObject.h.

void* Ogre::AllocatedObject< ResourceAllocPolicy >::operator new[] size_t  sz,
const char *  file,
int  line,
const char *  func
[inherited]
 

array operator new, with debug line info

Definition at line 79 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.


Member Data Documentation

Instances Ogre::CompositionTechnique::mInstances [private]
 

Definition at line 143 of file OgreCompositionTechnique.h.

CompositionTargetPass* Ogre::CompositionTechnique::mOutputTarget [private]
 

Output target pass (can be only one).

Definition at line 139 of file OgreCompositionTechnique.h.

Compositor* Ogre::CompositionTechnique::mParent [private]
 

Parent compositor.

Definition at line 132 of file OgreCompositionTechnique.h.

TargetPasses Ogre::CompositionTechnique::mTargetPasses [private]
 

Intermediate target passes.

Definition at line 137 of file OgreCompositionTechnique.h.

TextureDefinitions Ogre::CompositionTechnique::mTextureDefinitions [private]
 

Local texture definitions.

Definition at line 134 of file OgreCompositionTechnique.h.


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

Copyright © 2008 Torus Knot Software Ltd
Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sat Apr 11 13:47:19 2009