1#if !defined(SOGLGLEW_H)
4#include <Inventor/sys/port.h>
5#include <Inventor/SbBase.h>
6#include <Inventor/SoInventorGLEWLibName.h>
9# ifndef InventorGLEW_EXPORTS
10# ifndef OIV_DISABLE_AUTOLINK
11# pragma comment(lib,__INVENTORGLEWLIB)
16#ifdef InventorGLEW_EXPORTS
17# define INVENTORGLEW_API VC_DLL_EXPORT
19# define INVENTORGLEW_API VC_DLL_IMPORT
22#if defined(OIV_HEADLESS)
23#define glewGetContextNative eglewGetContext
25#define glewGetContextNative wglewGetContext
26#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
27#define glewGetContextNative glxewGetContext
29#define glewGetContextNative glewGetContextMac
35 struct EGLEWContextStruct;
40 struct GLXEWContextStruct;
48#if defined(OIV_HEADLESS)
49 typedef struct SoEGLEW::EGLEWContextStruct GlewContextNative;
51 typedef struct WGLEWContextStruct GlewContextNative;
52#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
53 typedef struct SoGLXEW::GLXEWContextStruct GlewContextNative;
55 typedef struct GLEWContextStruct GlewContextNative;
61 struct GLEWContextStruct* m_glewContext;
62 GlewContextNative* m_glewContextNative;
67 struct GLEWContextStruct* glewGetContextIV()
const
68 {
return m_glewContext; }
70 GlewContextNative* glewGetContextNativeIV()
const
71 {
return m_glewContextNative; }
73 bool isGLEWInitialized() {
return m_glewInit; }
78 void initGLEWContext();
86 void cleanGLEWContext();