MeVisLab Toolbox Reference
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 
28 SoEXTENDER class INVENTOR_SHADER_API SoUniformShaderParameter : public SoShaderParameter
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_
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.