OpenWalnut  1.5.0dev
Public Types | Public Member Functions | List of all members
WGEPostprocessorGauss Class Reference

Gauss filtering of the input. More...

#include <WGEPostprocessorGauss.h>

+ Inheritance diagram for WGEPostprocessorGauss:
+ Collaboration diagram for WGEPostprocessorGauss:

Public Types

typedef std::shared_ptr< WGEPostprocessorGaussSPtr
 Convenience typedef for a std::shared_ptr< WGEPostprocessorGauss >. More...
 
typedef std::shared_ptr< const WGEPostprocessorGaussConstSPtr
 Convenience typedef for a std::shared_ptr< const WGEPostprocessorGauss >. More...
 
- Public Types inherited from WGEPostprocessor
typedef std::shared_ptr< WGEPostprocessorSPtr
 Convenience typedef for an osg::ref_ptr< WGEPostprocessor >. More...
 
typedef std::shared_ptr< const WGEPostprocessorConstSPtr
 Convenience typedef for an osg::ref_ptr< const WGEPostprocessor >. More...
 
typedef std::vector< WGEPostprocessor::SPtrProcessorList
 Type used for returning lists of postprocessor prototypes. More...
 

Public Member Functions

 WGEPostprocessorGauss ()
 Default constructor. More...
 
 WGEPostprocessorGauss (osg::ref_ptr< WGEOffscreenRenderNode > offscreen, osg::ref_ptr< osg::Texture2D > tex0, osg::ref_ptr< osg::Texture2D > tex1=osg::ref_ptr< osg::Texture2D >(), osg::ref_ptr< osg::Texture2D > tex2=osg::ref_ptr< osg::Texture2D >(), osg::ref_ptr< osg::Texture2D > tex3=osg::ref_ptr< osg::Texture2D >(), osg::ref_ptr< osg::Texture2D > tex4=osg::ref_ptr< osg::Texture2D >(), osg::ref_ptr< osg::Texture2D > tex5=osg::ref_ptr< osg::Texture2D >(), osg::ref_ptr< osg::Texture2D > tex6=osg::ref_ptr< osg::Texture2D >(), osg::ref_ptr< osg::Texture2D > tex7=osg::ref_ptr< osg::Texture2D >())
 Constructor. More...
 
virtual ~WGEPostprocessorGauss ()
 Destructor. More...
 
virtual WGEPostprocessor::SPtr create (osg::ref_ptr< WGEOffscreenRenderNode > offscreen, const PostprocessorInput &gbuffer) const
 Create instance. More...
 
- Public Member Functions inherited from WGEPostprocessor
 WGEPostprocessor (std::string name, std::string description)
 Create named prototype. More...
 
virtual ~WGEPostprocessor ()
 Destructor. More...
 
virtual WPropGroup getProperties () const
 Returns the set of properties controlling the post-processing node. More...
 
virtual osg::ref_ptr< osg::Texture2D > getOutput (size_t idx=0) const
 Returns the result texture. More...
 
const std::vector< osg::ref_ptr< osg::Texture2D > > & getOutputList () const
 This processor can produce multiple outputs. More...
 
virtual osg::ref_ptr< osg::Texture2D > getDepth () const
 Returns the new depth texture. More...
 
virtual const std::string getName () const
 Gets the name of this postprocessor. More...
 
virtual const std::string getDescription () const
 Gets the description for this postprocessor. More...
 
virtual bool getFixedViewportSize () const
 When this returns true, the viewport size is fixed to the size of the target texture. More...
 
- Public Member Functions inherited from WPrototyped
 WPrototyped ()
 Default constructor. More...
 
virtual ~WPrototyped ()
 Destructor. More...
 
template<typename T >
bool isA ()
 Checks whether the actual prototype has the specified runtime type. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from WGEPostprocessor
static ProcessorList getPostprocessors ()
 Returns a list of all known postprocessor prototypes. More...
 
static void initPostprocessors ()
 Needs to be called prior to any "getPostprocessors" call. More...
 
static size_t addPostprocessor (SPtr processor)
 Allows adding a postprocessor. More...
 
- Protected Attributes inherited from WGEPostprocessor
std::vector< osg::ref_ptr< osg::Texture2D > > m_resultTextures
 The textures contain the result. More...
 
osg::ref_ptr< osg::Texture2D > m_depthTexture
 The texture contains the new depth. More...
 
WPropGroup m_properties
 All the properties of the post-processor. More...
 
WPropBool m_effectOnly
 A flag denoting whether the effect should be combined with color or not. More...
 
WPropDouble m_effectScale
 Scale the effect prior to blending it. More...
 
WGEShaderPreprocessor::SPtr m_effectOnlyPreprocessor
 For convenience, this is a shader preprocessor controlled by m_effectOnly property. More...
 

Detailed Description

Gauss filtering of the input.

It does filter all the textures you bind on it and returns a gauss filtered version. If you want to define the exact list of textures to filter in one pass, use the alternative create call.

Definition at line 38 of file WGEPostprocessorGauss.h.

Member Typedef Documentation

◆ ConstSPtr

typedef std::shared_ptr< const WGEPostprocessorGauss > WGEPostprocessorGauss::ConstSPtr

Convenience typedef for a std::shared_ptr< const WGEPostprocessorGauss >.

Definition at line 49 of file WGEPostprocessorGauss.h.

◆ SPtr

Convenience typedef for a std::shared_ptr< WGEPostprocessorGauss >.

Definition at line 44 of file WGEPostprocessorGauss.h.

Constructor & Destructor Documentation

◆ WGEPostprocessorGauss() [1/2]

WGEPostprocessorGauss::WGEPostprocessorGauss ( )

Default constructor.

Definition at line 32 of file WGEPostprocessorGauss.cpp.

Referenced by create().

+ Here is the caller graph for this function:

◆ WGEPostprocessorGauss() [2/2]

WGEPostprocessorGauss::WGEPostprocessorGauss ( osg::ref_ptr< WGEOffscreenRenderNode offscreen,
osg::ref_ptr< osg::Texture2D >  tex0,
osg::ref_ptr< osg::Texture2D >  tex1 = osg::ref_ptr< osg::Texture2D >(),
osg::ref_ptr< osg::Texture2D >  tex2 = osg::ref_ptr< osg::Texture2D >(),
osg::ref_ptr< osg::Texture2D >  tex3 = osg::ref_ptr< osg::Texture2D >(),
osg::ref_ptr< osg::Texture2D >  tex4 = osg::ref_ptr< osg::Texture2D >(),
osg::ref_ptr< osg::Texture2D >  tex5 = osg::ref_ptr< osg::Texture2D >(),
osg::ref_ptr< osg::Texture2D >  tex6 = osg::ref_ptr< osg::Texture2D >(),
osg::ref_ptr< osg::Texture2D >  tex7 = osg::ref_ptr< osg::Texture2D >() 
)

Constructor.

We implement a public constructor which can take more textures as input

Parameters
offscreenuse this offscreen node to add your texture pass'
tex0texture to filter
tex1texture to filter
tex2texture to filter
tex3texture to filter
tex4texture to filter
tex5texture to filter
tex6texture to filter
tex7texture to filter

Definition at line 38 of file WGEPostprocessorGauss.cpp.

References WGEPostprocessor::m_effectOnlyPreprocessor, and WGEPostprocessor::m_resultTextures.

◆ ~WGEPostprocessorGauss()

WGEPostprocessorGauss::~WGEPostprocessorGauss ( )
virtual

Destructor.

Definition at line 118 of file WGEPostprocessorGauss.cpp.

Member Function Documentation

◆ create()

WGEPostprocessor::SPtr WGEPostprocessorGauss::create ( osg::ref_ptr< WGEOffscreenRenderNode offscreen,
const PostprocessorInput gbuffer 
) const
virtual

Create instance.

Uses the protected constructor. Implement it if you derive from this class!

Parameters
offscreenuse this offscreen node to add your texture pass'
gbufferthe input textures you should use
Returns
shared pointer to the created instance

Implements WGEPostprocessor.

Definition at line 123 of file WGEPostprocessorGauss.cpp.

References WGEPostprocessor::PostprocessorInput::m_colorTexture, and WGEPostprocessorGauss().

+ Here is the call graph for this function:

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