1#ifndef SOGLDRIVERDATABASE_H
2#define SOGLDRIVERDATABASE_H
36#include <Inventor/C/glue/gl.h>
37#include <Inventor/lists/SbList.h>
40class SoGLDriverDatabaseP;
46 static SbBool
isBroken(
const cc_glglue * context,
const SbName & feature);
47 static SbBool
isSlow(
const cc_glglue * context,
const SbName & feature);
48 static SbBool
isFast(
const cc_glglue * context,
const SbName & feature);
55 static void addBuffer(
const char * buffer);
61 static void init(
void);
64 static SoGLDriverDatabaseP * pimpl(
void);
70#define SO_GL_MULTIDRAW_ELEMENTS "COIN_multidraw_elements"
71#define SO_GL_POLYGON_OFFSET "COIN_polygon_offset"
72#define SO_GL_TEXTURE_OBJECT "COIN_texture_object"
73#define SO_GL_3D_TEXTURES "COIN_3d_textures"
74#define SO_GL_MULTITEXTURE "COIN_multitexture"
75#define SO_GL_TEXSUBIMAGE "COIN_texsubimage"
76#define SO_GL_2D_PROXY_TEXTURES "COIN_2d_proxy_textures"
77#define SO_GL_TEXTURE_EDGE_CLAMP "COIN_texture_edge_clamp"
78#define SO_GL_TEXTURE_COMPRESSION "COIN_texture_compression"
79#define SO_GL_COLOR_TABLES "COIN_color_tables"
80#define SO_GL_COLOR_SUBTABLES "COIN_color_subtables"
81#define SO_GL_PALETTED_TEXTURES "COIN_paletted_textures"
82#define SO_GL_BLEND_EQUATION "COIN_blend_equation"
83#define SO_GL_VERTEX_ARRAY "COIN_vertex_array"
84#define SO_GL_NV_VERTEX_ARRAY_RANGE "COIN_nv_vertex_array_range"
85#define SO_GL_VERTEX_BUFFER_OBJECT "COIN_vertex_buffer_object"
86#define SO_GL_ARB_FRAGMENT_PROGRAM "COIN_arb_fragment_program"
87#define SO_GL_ARB_VERTEX_PROGRAM "COIN_arb_vertex_program"
88#define SO_GL_ARB_VERTEX_SHADER "COIN_arb_vertex_shader"
89#define SO_GL_ARB_SHADER_OBJECT "COIN_arb_shader_object"
90#define SO_GL_OCCLUSION_QUERY "COIN_occlusion_query"
91#define SO_GL_FRAMEBUFFER_OBJECT "COIN_framebuffer_object"
92#define SO_GL_ANISOTROPIC_FILTERING "COIN_anisotropic_filtering"
93#define SO_GL_SORTED_LAYERS_BLEND "COIN_sorted_layers_blend"
94#define SO_GL_BUMPMAPPING "COIN_bumpmapping"
95#define SO_GL_VBO_IN_DISPLAYLIST "COIN_vbo_in_displaylist"
96#define SO_GL_NON_POWER_OF_TWO_TEXTURES "COIN_non_power_of_two_textures"
97#define SO_GL_GENERATE_MIPMAP "COIN_generate_mipmap"
98#define SO_GL_GLSL_CLIP_VERTEX_HW "COIN_GLSL_clip_vertex_hw"
The SbName class stores strings by reference.
Definition SbName.h:40
The SoGLDriverDatabase class is used for looking up broken/slow features in OpenGL drivers.
Definition SoGLDriverDatabase.h:43
static void addFeature(const SbName &feature, const SbName &comment)
Definition SoGLDriverDatabase.cpp:1165
static void loadFromFile(const SbName &filename)
Definition SoGLDriverDatabase.cpp:1138
static SbBool isSupported(const cc_glglue *context, const SbName &feature)
Definition SoGLDriverDatabase.cpp:1083
static SbBool isSlow(const cc_glglue *context, const SbName &feature)
Definition SoGLDriverDatabase.cpp:1101
static void addBuffer(const char *buffer)
Definition SoGLDriverDatabase.cpp:1147
static SbBool isBroken(const cc_glglue *context, const SbName &feature)
Definition SoGLDriverDatabase.cpp:1092
static void addFile(const SbName &filename)
Definition SoGLDriverDatabase.cpp:1156
static SbName getComment(const cc_glglue *context, const SbName &feature)
Definition SoGLDriverDatabase.cpp:1120
static void loadFromBuffer(const char *buffer)
Definition SoGLDriverDatabase.cpp:1129
static SbBool isFast(const cc_glglue *context, const SbName &feature)
Definition SoGLDriverDatabase.cpp:1110