MeVisLab Toolbox Reference
SoMultiplePass.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_MULTIPLE_PASS_H
14 #define SO_MULTIPLE_PASS_H
15 
16 
18 
19 #include "SoShaderSystem.h"
20 #include <Inventor/nodes/SoGroup.h>
21 #include <Inventor/fields/SoSFUInt32.h>
22 #include <Inventor/fields/SoSFFloat.h>
23 
25 class INVENTOR_SHADER_API SoMultiplePass : public SoGroup
26 {
27  typedef SoGroup inherited;
28 
29  SO_NODE_HEADER(SoMultiplePass);
30 
31  public:
32 
34  SoSFUInt32 numPasses;
35 
37  SoSFFloat epsilon;
38 
40  SoSFFloat value;
41 
44 
47  SbBool affectsState() const override {
48  return FALSE;
49  }
50 
51  SoEXTENDER public:
52 
54  void doAction(SoAction *action) override;
55  void callback(SoCallbackAction *action) override;
56  void GLRender(SoGLRenderAction *action) override;
57  void pick(SoPickAction *action) override;
58  void getBoundingBox(SoGetBoundingBoxAction *action) override;
59  void handleEvent(SoHandleEventAction *action) override;
60  void getMatrix(SoGetMatrixAction *action) override;
61  void search(SoSearchAction *action) override;
62 
63  SoINTERNAL public:
64 
66  static void initClass();
67 };
68 
69 #endif // _SO_MULTIPLE_PASS_
Open Inventor group node traversing its subgraph a number of times.
void pick(SoPickAction *action) override
void doAction(SoAction *action) override
Implement actions.
SoSFUInt32 numPasses
Number of times to traverse the subgraph below.
void search(SoSearchAction *action) override
void GLRender(SoGLRenderAction *action) override
SbBool affectsState() const override
Overrides default method on SoNode to return FALSE since this node is effectively a separator.
void getMatrix(SoGetMatrixAction *action) override
void handleEvent(SoHandleEventAction *action) override
SoMultiplePass()
Constructor.
SoSFFloat epsilon
Smallest value that keeps the node still iterating.
SoSFFloat value
Value to compare against 'epsilon'.
void callback(SoCallbackAction *action) override
void getBoundingBox(SoGetBoundingBoxAction *action) override
static void initClass()
Initialize class with runtime type system.