1 #ifndef COIN_SOSHADERPARAMETER_H 2 #define COIN_SOSHADERPARAMETER_H 36 #include <Inventor/nodes/SoNode.h> 37 #include <Inventor/nodes/SoSubNode.h> 38 #include <Inventor/fields/SoSFString.h> 39 #include <Inventor/fields/SoSFFloat.h> 40 #include <Inventor/fields/SoSFInt32.h> 41 #include <Inventor/fields/SoSFVec2f.h> 42 #include <Inventor/fields/SoSFVec3f.h> 43 #include <Inventor/fields/SoSFVec4f.h> 44 #include <Inventor/fields/SoMFFloat.h> 45 #include <Inventor/fields/SoMFInt32.h> 46 #include <Inventor/fields/SoMFVec2f.h> 47 #include <Inventor/fields/SoMFVec3f.h> 48 #include <Inventor/fields/SoMFVec4f.h> 49 #include <Inventor/fields/SoSFMatrix.h> 50 #include <Inventor/fields/SoMFMatrix.h> 51 #include <Inventor/fields/SoSFNode.h> 52 #include <Inventor/fields/SoSFEnum.h> 53 #include <Inventor/fields/SoSFImage.h> 55 #include <Inventor/fields/SoSFVec2i32.h> 56 #include <Inventor/fields/SoSFVec3i32.h> 57 #include <Inventor/fields/SoSFVec4i32.h> 58 #include <Inventor/fields/SoMFVec2i32.h> 59 #include <Inventor/fields/SoMFVec3i32.h> 60 #include <Inventor/fields/SoMFVec4i32.h> 62 class SoGLShaderParameter;
63 class SoGLShaderObject;
83 static void initClass();
93 class SoUniformShaderParameterP;
100 static void initClass(
void);
101 virtual void updateParameter(SoGLShaderObject *shaderObject) = 0;
107 SoGLShaderParameter * getGLShaderParameter(
const uint32_t cachecontext);
108 void ensureParameter(SoGLShaderObject * shader);
111 SoUniformShaderParameterP * pimpl;
127 static void initClass();
147 static void initClass();
167 static void initClass();
187 static void initClass();
208 static void initClass();
229 static void initClass();
250 static void initClass();
271 static void initClass();
292 static void initClass();
313 static void initClass();
334 static void initClass();
354 static void initClass();
375 static void initClass();
396 static void initClass();
417 static void initClass();
439 static void initClass();
460 static void initClass();
481 static void initClass();
518 static void initClass(
void);
520 virtual void updateValue(
SoState *state);
SoMFMatrix value
Definition: SoShaderParameter.h:476
The SoShaderParameter3f class is used to define a three-dimensional floating point value as shader pa...
Definition: SoShaderParameter.h:198
The SoBase class is the top-level superclass for a number of class-hierarchies.
Definition: SoBase.h:45
The SoShaderParameterMatrix class is used to define a matrix as shader parameter. ...
Definition: SoShaderParameter.h:450
The SoMFFloat class is a container for floating point values.
Definition: SoMFFloat.h:39
The SoShaderParameterArray4f class is used to define a four-dimensional floating point array as shade...
Definition: SoShaderParameter.h:407
The SoMFVec2i32 class is a container for SbVec2i32 vectors.
Definition: SoMFVec2i32.h:40
#define SO_NODE_HEADER(classname)
SoMFFloat value
Definition: SoShaderParameter.h:287
The SoMFVec3i32 class is a container for SbVec3i32 vectors.
Definition: SoMFVec3i32.h:40
The SoMFVec4i32 class is a container for SbVec4i32 vectors.
Definition: SoMFVec4i32.h:40
SoSFInt32 value
Definition: SoShaderParameter.h:143
The SoShaderParameterArray2f class is used to define a two-dimensional floating point array as shader...
Definition: SoShaderParameter.h:324
The SoSFVec4f class is a container for an SbVec4f vector.
Definition: SoSFVec4f.h:40
The SoShaderParameter1i class is used to define an integer value as shader parameter.
Definition: SoShaderParameter.h:138
The SoSFVec2i32 class is a container for an SbVec2i32 vector.
Definition: SoSFVec2i32.h:40
The SoShaderParameter2i class is used to define a two-dimensional integer value as shader parameter...
Definition: SoShaderParameter.h:178
The SoSFVec3i32 class is a container for an SbVec3i32 vector.
Definition: SoSFVec3i32.h:40
The SoMFInt32 class is a container for 32-bit integer values.
Definition: SoMFInt32.h:39
SoSFVec2i32 value
Definition: SoShaderParameter.h:183
The SoSFVec4i32 class is a container for an SbVec4i32 vector.
Definition: SoSFVec4i32.h:40
The SoSFString class is a container for an SbString.
Definition: SoSFString.h:40
The SoShaderParameterArray3i class is used to define a three-dimensional integer array as shader para...
Definition: SoShaderParameter.h:386
The SoShaderParameterMatrixArray class is used to define a matrix array as shader parameter...
Definition: SoShaderParameter.h:471
The SoSFVec2f class is a container for an SbVec2f vector.
Definition: SoSFVec2f.h:40
The SoMFVec4f class is a container for SbVec4f vectors.
Definition: SoMFVec4f.h:40
SoSFVec2f value
Definition: SoShaderParameter.h:163
SoMFVec3i32 value
Definition: SoShaderParameter.h:391
The SoShaderParameter4i class is used to define a four-dimensional integer value as shader parameter...
Definition: SoShaderParameter.h:261
MatrixType
Definition: SoShaderParameter.h:498
The SoNode class is the base class for nodes used in scene graphs.
Definition: SoNode.h:56
SoSFInt32 identifier
Definition: SoShaderParameter.h:80
The SoShaderParameterArray1f class is used to define a floating point array as shader parameter...
Definition: SoShaderParameter.h:282
The SoSFEnum class is a container for an enum value.
Definition: SoSFEnum.h:40
SoSFString name
Definition: SoShaderParameter.h:79
SoSFVec4f value
Definition: SoShaderParameter.h:245
SoMFVec2f value
Definition: SoShaderParameter.h:329
The SoMFVec2f class is a container for SbVec2f vectors.
Definition: SoMFVec2f.h:40
SoMFVec4f value
Definition: SoShaderParameter.h:412
The SoState class manages the Coin scenegraph traversal state data.
Definition: SoState.h:44
SoMFVec2i32 value
Definition: SoShaderParameter.h:349
The SoSFInt32 class is a container for a 32-bit integer value.
Definition: SoSFInt32.h:39
The SoShaderParameter1f class is used to define a floating point value as shader parameter.
Definition: SoShaderParameter.h:118
SoSFEnum matrixTransform
Definition: SoShaderParameter.h:513
SoMFVec3f value
Definition: SoShaderParameter.h:370
The SoShaderParameter2f class is used to define a two-dimensional floating point value as shader para...
Definition: SoShaderParameter.h:158
SoMFInt32 value
Definition: SoShaderParameter.h:308
The SoShaderParameterArray3f class is used to define a three-dimensional floating point array as shad...
Definition: SoShaderParameter.h:365
The SbMatrix class is a 4x4 dimensional representation of a matrix.
Definition: SbMatrix.h:47
The SoShaderParameter4f class is used to define a four-dimensional floating point value as shader par...
Definition: SoShaderParameter.h:240
SoSFMatrix value
Definition: SoShaderParameter.h:455
The SoShaderParameter3i class is used to define a three-dimensional integer value as shader parameter...
Definition: SoShaderParameter.h:219
The SoShaderParameterArray4i class is used to define a four-dimensional integer array as shader param...
Definition: SoShaderParameter.h:429
SoSFVec3f value
Definition: SoShaderParameter.h:203
The SoMFMatrix class is a container for SbMatrix values.
Definition: SoMFMatrix.h:40
The SoSFFloat class is a container for a floating point value.
Definition: SoSFFloat.h:39
MatrixTransform
Definition: SoShaderParameter.h:505
The SoShaderParameterArray2i class is used to define a two-dimensional integer array as shader parame...
Definition: SoShaderParameter.h:344
The SoSFVec3f class is a container for an SbVec3f vector.
Definition: SoSFVec3f.h:40
SoSFEnum matrixType
Definition: SoShaderParameter.h:512
The SoShaderStateMatrixParameter class is used to define a matrix as shader parameter whose content i...
Definition: SoShaderParameter.h:492
The SoShaderParameter class is the base class for all shader parameter classes.
Definition: SoShaderParameter.h:74
The SoSFMatrix class is a container for an SbMatrix.
Definition: SoSFMatrix.h:40
SoSFFloat value
Definition: SoShaderParameter.h:123
SoSFVec3i32 value
Definition: SoShaderParameter.h:224
The SoMFVec3f class is a container for SbVec3f vectors.
Definition: SoMFVec3f.h:40
SoSFVec4i32 value
Definition: SoShaderParameter.h:266
#define SO_NODE_ABSTRACT_HEADER(classname)
The SoShaderParameterArray1i class is used to define an integer array as shader parameter.
Definition: SoShaderParameter.h:303