28#ifndef __CompositionTechnique_H__
29#define __CompositionTechnique_H__
81 fsaa(
true), hwGammaWrite(
false), depthBufferId(1), pooled(
false), scope(TS_LOCAL) {}
Superclass for all objects that wish to use custom memory allocators when their new / delete operator...
Object representing one render to a RenderTarget or Viewport in the Ogre Composition framework.
Local texture definition.
PixelFormatList formatList
Base composition technique, can be subclassed in plugins.
void removeAllTextureDefinitions()
Remove all Texture Definitions.
TextureDefinitionIterator getTextureDefinitionIterator(void)
Get an iterator over the TextureDefinitions in this Technique.
vector< CompositionTargetPass * >::type TargetPasses
Typedefs for several iterators.
void removeTargetPass(size_t idx)
Remove a target pass.
virtual void setSchemeName(const String &schemeName)
Assign a scheme name to this technique, used to switch between multiple techniques by choice rather t...
VectorIterator< TextureDefinitions > TextureDefinitionIterator
CompositionTargetPass * mOutputTarget
Output target pass (can be only one)
virtual ~CompositionTechnique()
CompositionTargetPass * createTargetPass()
Create a new target pass, and return a pointer to it.
TargetPassIterator getTargetPassIterator(void)
Get an iterator over the TargetPasses in this Technique.
void removeAllTargetPasses()
Remove all target passes.
void removeTextureDefinition(size_t idx)
Remove and destroy a local texture definition.
TextureDefinition * getTextureDefinition(size_t idx)
Get a local texture definition.
VectorIterator< TargetPasses > TargetPassIterator
TextureDefinition * getTextureDefinition(const String &name)
Get a local texture definition with a specific name.
TextureDefinition * createTextureDefinition(const String &name)
Create a new local texture definition, and return a pointer to it.
const String & getSchemeName() const
Get the scheme name assigned to this technique.
virtual bool isSupported(bool allowTextureDegradation)
Determine if this technique is supported on the current rendering device.
CompositionTargetPass * getTargetPass(size_t idx)
Get a target pass.
Compositor * mParent
Parent compositor.
Compositor * getParent()
Get parent object.
size_t getNumTargetPasses()
Get the number of target passes.
TextureDefinitions mTextureDefinitions
Local texture definitions.
String mCompositorLogicName
Optional compositor logic name.
const String & getCompositorLogicName() const
Get the compositor logic name assigned to this technique.
CompositionTargetPass * getOutputTargetPass()
Get output (final) target pass.
TargetPasses mTargetPasses
Intermediate target passes.
String mSchemeName
Optional scheme name.
size_t getNumTextureDefinitions()
Get the number of local texture definitions.
CompositionTechnique(Compositor *parent)
void setCompositorLogicName(const String &compositorLogicName)
Set the name of the compositor logic assigned to this technique.
vector< TextureDefinition * >::type TextureDefinitions
Class representing a Compositor object.
Reference-counted shared pointer, used for objects where implicit destruction is required.