ImFusion C++ SDK 4.4.0
ImFusion::ImageMath::internal::StashGl Class Reference

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

Implementation of GlExprInterface for StashTpl (. More...

Inheritance diagram for ImFusion::ImageMath::internal::StashGl:

Detailed Description

Implementation of GlExprInterface for StashTpl (.

See also
StashTpl for more details)

Public Member Functions

std::string evalString (bool tagAndAssign=true) const override
 Print expression.
void tagAndAssignNames (std::unordered_map< 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 > &indices, const std::string &prefix) const override
 Set uniform/sampler arguments.
std::vector< GlExprInterface * > children () override
 Used for traversing the expression tree. Contains the immediate children of node.
std::vector< const 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.

Member Function Documentation

◆ evalString()

std::string ImFusion::ImageMath::internal::StashGl::evalString ( bool tagAndAssign = true) const
overridevirtual

Print expression.

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

◆ tagAndAssignNames()

void ImFusion::ImageMath::internal::StashGl::tagAndAssignNames ( std::unordered_map< internal::TaggingIndex, const void * > & taggedLeaves,
std::unordered_map< std::type_index, int > & countPerLeafType,
const std::string & prefix ) const
overridevirtual

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()

void ImFusion::ImageMath::internal::StashGl::getUniformDefinitionList ( std::string & definitionList,
const std::vector< int > & indices,
const std::string & prefix ) const
overridevirtual

Collect uniform/sampler definitions.

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

◆ getVariableDefinitionList()

void ImFusion::ImageMath::internal::StashGl::getVariableDefinitionList ( std::string & definitionList,
const std::vector< int > & indices,
const std::string & prefix ) const
overridevirtual

Collect variable definitions.

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

◆ setArguments()

int ImFusion::ImageMath::internal::StashGl::setArguments ( GL::Program & p,
const std::vector< int > & indices,
const std::string & prefix ) const
overridevirtual

Set uniform/sampler arguments.

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

◆ children() [1/2]

std::vector< GlExprInterface * > ImFusion::ImageMath::internal::StashGl::children ( )
overridevirtual

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

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

◆ children() [2/2]

std::vector< const GlExprInterface * > ImFusion::ImageMath::internal::StashGl::children ( ) const
overridevirtual

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/StashGl.h
Search Tab / S to search, Esc to close