-// Operation for querying OpenGL parameters. This must be done in a
-// valid OpenGL context, potentially in another thread.
-namespace
-{
-struct GeneralInitOperation : public GraphicsContextOperation
-{
- GeneralInitOperation()
- : GraphicsContextOperation(std::string("General init"))
- {
- }
- void run(osg::GraphicsContext* gc)
- {
- SGPropertyNode* simRendering = fgGetNode("/sim/rendering");
-
- simRendering->setStringValue("gl-vendor", (char*) glGetString(GL_VENDOR));
- SG_LOG( SG_GENERAL, SG_INFO, glGetString(GL_VENDOR));
-
- simRendering->setStringValue("gl-renderer", (char*) glGetString(GL_RENDERER));
- SG_LOG( SG_GENERAL, SG_INFO, glGetString(GL_RENDERER));
-
- simRendering->setStringValue("gl-version", (char*) glGetString(GL_VERSION));
- SG_LOG( SG_GENERAL, SG_INFO, glGetString(GL_VERSION));
-
- simRendering->setStringValue("gl-shading-language-version", (char*) glGetString(GL_SHADING_LANGUAGE_VERSION));
- SG_LOG( SG_GENERAL, SG_INFO, glGetString(GL_SHADING_LANGUAGE_VERSION));
-
- GLint tmp;
- glGetIntegerv( GL_MAX_TEXTURE_SIZE, &tmp );
- simRendering->setIntValue("max-texture-size", tmp);
-
- glGetIntegerv( GL_DEPTH_BITS, &tmp );
- simRendering->setIntValue("depth-buffer-bits", tmp);
- }
-};
-
-}