28 #ifndef __CompositionTechnique_H__
29 #define __CompositionTechnique_H__
81 fsaa(true), hwGammaWrite(false), depthBufferId(1), pooled(false), scope(TS_LOCAL) {}
160 { mCompositorLogicName = compositorLogicName; }
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.
const String & getSchemeName() const
Get the scheme name assigned to this technique.
void removeAllTextureDefinitions()
Remove all Texture Definitions.
TextureDefinitionIterator getTextureDefinitionIterator(void)
Get an iterator over the TextureDefinitions in this Technique.
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...
CompositionTargetPass * getOutputTargetPass()
Get output (final) target pass.
vector< CompositionTargetPass * >::type TargetPasses
Typedefs for several iterators.
VectorIterator< TextureDefinitions > TextureDefinitionIterator
CompositionTargetPass * mOutputTarget
Output target pass (can be only one)
virtual ~CompositionTechnique()
TextureDefinition * createTextureDefinition(const String &name)
Create a new local texture definition, 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.
VectorIterator< TargetPasses > TargetPassIterator
CompositionTargetPass * getTargetPass(size_t idx)
Get a target pass.
Compositor * getParent()
Get parent object.
virtual bool isSupported(bool allowTextureDegradation)
Determine if this technique is supported on the current rendering device.
CompositionTargetPass * createTargetPass()
Create a new target pass, and return a pointer to it.
Compositor * mParent
Parent compositor.
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.
TargetPasses mTargetPasses
Intermediate target passes.
String mSchemeName
Optional scheme name.
TextureDefinition * getTextureDefinition(size_t idx)
Get a local texture definition.
size_t getNumTextureDefinitions()
Get the number of local texture definitions.
TextureDefinition * getTextureDefinition(const String &name)
Get a local texture definition with a specific name.
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.
Concrete IteratorWrapper for nonconst access to the underlying container.
vector< PixelFormat >::type PixelFormatList