MeVisLab Resolution Independence API
SoUniformShaderParameter.h
Go to the documentation of this file.
1 /*************************************************************************************
2 **
3 ** Copyright 2007, MeVis Medical Solutions AG
4 **
5 ** The user may use this file in accordance with the license agreement provided with
6 ** the Software or, alternatively, in accordance with the terms contained in a
7 ** written agreement between the user and MeVis Medical Solutions AG.
8 **
9 ** For further information use the contact form at https://www.mevislab.de/contact
10 **
11 **************************************************************************************/
12 
13 #ifndef SO_UNIFORM_SHADER_PARAMETER_H
14 #define SO_UNIFORM_SHADER_PARAMETER_H
15 
16 
18 
19 #include "SoShaderSystem.h"
21 #include <Inventor/SbString.h>
22 #include <set>
23 
25 
26 
29 {
30  typedef SoShaderParameter inherited;
31 
32  SO_NODE_ABSTRACT_HEADER(SoUniformShaderParameter);
33 
34  SoEXTENDER public:
35 
37  void GLRender(SoGLRenderAction *action) override;
38 
39  SoINTERNAL public:
40 
42  static void initClass();
43 
46  virtual void updatePreparation(SoState *) {}
47 
50  virtual void updateParameter(SoUniformParameterBase *uniformBase, SoState *state) = 0;
51 
53  std::set<SbString> auxUniformParameters;
54 
55  protected:
56 
59 };
60 
61 #endif // _SO_UNIFORM_SHADER_PARAMETER_
#define INVENTOR_SHADER_API
Define class export specifier.
Abstract Open Inventor group base class for shader parameter nodes.
Base class for uniform shader parameters.
Abstract Open Inventor base class for uniform shader parameter nodes.
virtual void updatePreparation(SoState *)
Hook for internal preparation steps.
static void initClass()
Initialize class with runtime type system.
void GLRender(SoGLRenderAction *action) override
Add this node to element in state.
SoUniformShaderParameter()
Constructor.
virtual void updateParameter(SoUniformParameterBase *uniformBase, SoState *state)=0
Assigns or updates the parameter's value.
std::set< SbString > auxUniformParameters
Auxiliary uniform shader parameters which are maintained by this node.