MeVisLab Resolution Independence API
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 
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_
#define INVENTOR_SHADER_API
Define class export specifier.
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.