ImFusion C++ SDK 4.4.0
ImFusion::ImageMath::internal::NoiseGl< ImplType > Class Template Reference

#include <ImFusion/ImageMath/OpenGL/NoiseGl.h>

Implementation of GlExprInterface for Noise (. More...

Inheritance diagram for ImFusion::ImageMath::internal::NoiseGl< ImplType >:

Detailed Description

template<typename ImplType>
class ImFusion::ImageMath::internal::NoiseGl< ImplType >

Implementation of GlExprInterface for Noise (.

See also
Noise for more details)

Public Member Functions

void tagAndAssignNames (std::unordered_map< ImageMath::internal::TaggingIndex, const void * > &taggedLeaves, std::unordered_map< std::type_index, int > &countPerLeafType, const std::string &prefix) const override
 We need to tag leaves and tell unique leaves that they are responsible to define the uniforms and set the shader arguments.
void getUniformDefinitionList (std::string &definitionList, const std::vector< int > &indices, const std::string &prefix) const override
 Collect uniform/sampler definitions.
void getVariableDefinitionList (std::string &definitionList, const std::vector< int > &indices, const std::string &prefix) const override
 Collect variable definitions.
int setArguments (GL::Program &p, const std::vector< int > &indicesIn, const std::string &prefix) const override
 Set uniform/sampler arguments.
std::string evalString (bool tagAndAssign=true) const override
 Implementation of GlExprInterface interface.
std::vector< internal::GlExprInterface * > children () override
 Used for traversing the expression tree. Contains the immediate children of node.
std::vector< const internal::GlExprInterface * > children () const override
 Used for traversing the expression tree. Contains the immediate children of node.
Public Member Functions inherited from ImFusion::ImageMath::internal::GlExprInterface
ExprInterfaceexprInterface ()
 Get image descriptor of the wrapped expression.
const ExprInterfaceexprInterface () const
virtual bool setMagFilter (ImageMath::MagFilter mag)
 Set interpolation behaviour of the current leaf (only).
virtual bool setWrap (ImageMath::Wrap wrap)
 Set interpolation behaviour of the current leaf (only).
bool setMagFilterRecursive (ImageMath::MagFilter mag)
 Set interpolation behaviour of the current leaf and all of its children.
bool setWrapRecursive (ImageMath::Wrap wrap)
 Set wrap behaviour of the current leaf and all of its children.

Additional Inherited Members

Protected Member Functions inherited from ImFusion::ImageMath::internal::NoiseGlBase
void tagAndAssignNamesImpl (std::unordered_map< ImageMath::internal::TaggingIndex, const void * > &taggedLeaves, std::unordered_map< std::type_index, int > &countPerLeafType, const std::string &prefix, internal::uintptr_t imgDescPtr) const
void getUniformDefinitionListImpl (std::string &definitionList, const std::vector< int > &indices, const std::string &prefix) const
void getVariableDefinitionListImpl (std::string &definitionList, const std::vector< int > &indices, const std::string &prefix, NoiseType noiseType) const
int setArgumentsImpl (GL::Program &p, const std::string &prefix, const vec3f &dimensions, const vec3i &stride, uint32_t seedHash) const
std::string evalStringImpl (bool tagAndAssign, const std::string &alphaString, const std::string &betaString, int numChannels, NoiseType noiseType) const
Protected Attributes inherited from ImFusion::ImageMath::internal::NoiseGlBase
std::string m_name = "uninitialized"
bool m_tagged = false

Member Function Documentation

◆ tagAndAssignNames()

template<typename ImplType>
void ImFusion::ImageMath::internal::NoiseGl< ImplType >::tagAndAssignNames ( std::unordered_map< ImageMath::internal::TaggingIndex, const void * > & taggedLeaves,
std::unordered_map< std::type_index, int > & countPerLeafType,
const std::string & prefix ) const
inlineoverridevirtual

We need to tag leaves and tell unique leaves that they are responsible to define the uniforms and set the shader arguments.

The names for uniforms and variables will also be assigned during this stage

Implements ImFusion::ImageMath::internal::GlExprInterface.

◆ getUniformDefinitionList()

template<typename ImplType>
void ImFusion::ImageMath::internal::NoiseGl< ImplType >::getUniformDefinitionList ( std::string & definitionList,
const std::vector< int > & indices,
const std::string & prefix ) const
inlineoverridevirtual

Collect uniform/sampler definitions.

Implements ImFusion::ImageMath::internal::GlExprInterface.

◆ getVariableDefinitionList()

template<typename ImplType>
void ImFusion::ImageMath::internal::NoiseGl< ImplType >::getVariableDefinitionList ( std::string & definitionList,
const std::vector< int > & indices,
const std::string & prefix ) const
inlineoverridevirtual

Collect variable definitions.

Implements ImFusion::ImageMath::internal::GlExprInterface.

◆ setArguments()

template<typename ImplType>
int ImFusion::ImageMath::internal::NoiseGl< ImplType >::setArguments ( GL::Program & p,
const std::vector< int > & indices,
const std::string & prefix ) const
inlineoverridevirtual

Set uniform/sampler arguments.

Implements ImFusion::ImageMath::internal::GlExprInterface.

◆ evalString()

template<typename ImplType>
std::string ImFusion::ImageMath::internal::NoiseGl< ImplType >::evalString ( bool tagAndAssign = true) const
inlineoverridevirtual

Implementation of GlExprInterface interface.

Implements ImFusion::ImageMath::internal::GlExprInterface.

◆ children() [1/2]

template<typename ImplType>
std::vector< internal::GlExprInterface * > ImFusion::ImageMath::internal::NoiseGl< ImplType >::children ( )
inlineoverridevirtual

Used for traversing the expression tree. Contains the immediate children of node.

Implements ImFusion::ImageMath::internal::GlExprInterface.

◆ children() [2/2]

template<typename ImplType>
std::vector< const internal::GlExprInterface * > ImFusion::ImageMath::internal::NoiseGl< ImplType >::children ( ) const
inlineoverridevirtual

Used for traversing the expression tree. Contains the immediate children of node.

Implements ImFusion::ImageMath::internal::GlExprInterface.


The documentation for this class was generated from the following file:
  • ImFusion/ImageMath/OpenGL/NoiseGl.h
Search Tab / S to search, Esc to close