MeVisLab Toolbox Reference
SoCheckShaderSupport.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_CHECK_SHADER_SUPPORT_H
14 #define SO_CHECK_SHADER_SUPPORT_H
15 
16 
18 
19 #include "SoShaderSystem.h"
20 #include <Inventor/nodes/SoSubNode.h>
21 #include <Inventor/fields/SoSFBool.h>
22 
23 class SoGLRenderAction;
24 
26 class INVENTOR_SHADER_API SoCheckShaderSupport : public SoNode
27 {
28  typedef SoNode inherited;
29 
30  SO_NODE_HEADER(SoCheckShaderSupport);
31 
32  public:
33 
35  SoSFBool shaderSupport;
36 
39 
40  SoEXTENDER public:
41 
43  void GLRender(SoGLRenderAction *action) override;
44 
45  SoINTERNAL public:
46 
48  static void initClass();
49 
50  private:
51 
52  SbBool _hasBeenChecked;
53 };
54 
55 #endif // _SO_CHECK_SHADER_SUPPORT_
Open Inventor node to check if OpenGL shader support is provided by the OpenGL driver.
static void initClass()
Initialize class with runtime type system.
SoCheckShaderSupport()
Constructor.
void GLRender(SoGLRenderAction *action) override
Do the check.
SoSFBool shaderSupport
Read-Only: 'True' if graphics hardware supports vertex and fragment shader, 'False' otherwise.