13 #ifndef SO_SHADER_OBJECT_ELEMENT_H
14 #define SO_SHADER_OBJECT_ELEMENT_H
19 #include "SoShaderSystem.h"
20 #include <Inventor/elements/SoAccumulatedElement.h>
21 #include <Inventor/SoLists.h>
28 typedef SoAccumulatedElement inherited;
35 void init(SoState *state)
override;
41 static const SoNodeList &
get(SoState *state);
44 static void clear(SoState *state, SoNode *node);
47 void push(SoState *state)
override;
Open Inventor element storing a list of vertex or fragment shader nodes in the Open Inventor state.
static const SoNodeList & get(SoState *state)
Returns the current list of shader objects from the state.
void init(SoState *state) override
Initialize element.
SoNodeList _shaders
List of vertex or fragment shader nodes.
static void initClass()
Initialize class with runtime type system.
void push(SoState *state) override
Overrides push() method to copy values from next instance in the stack.
static void add(SoState *state, SoShaderObject *shader)
Add to the current shader object list.
static void clear(SoState *state, SoNode *node)
Clear list.
Abstract Open Inventor node for vertex or fragment shader nodes.