enum | DriverGLVendorIdType {
DRIVER_VENDOR_UNKNOWN =0,
DRIVER_VENDOR_ATI,
DRIVER_VENDOR_NVIDIA,
DRIVER_VENDOR_INTEL,
DRIVER_VENDOR_MESA,
DRIVER_VENDOR_MICROSOFT
} |
| Updates the extensions string. More...
|
|
int | OwnRenderWindow |
| Updates the extensions string. More...
|
|
char * | ExtensionsString |
| Updates the extensions string. More...
|
|
vtkTimeStamp | BuildTime |
| Updates the extensions string. More...
|
|
std::string | DriverGLVersion |
| Updates the extensions string. More...
|
|
int | DriverGLVersionMajor |
| Updates the extensions string. More...
|
|
int | DriverGLVersionMinor |
| Updates the extensions string. More...
|
|
int | DriverGLVersionPatch |
| Updates the extensions string. More...
|
|
std::string | DriverGLVendor |
| Updates the extensions string. More...
|
|
std::string | DriverGLRenderer |
| Updates the extensions string. More...
|
|
int | DriverVersionMajor |
| Updates the extensions string. More...
|
|
int | DriverVersionMinor |
| Updates the extensions string. More...
|
|
int | DriverVersionPatch |
| Updates the extensions string. More...
|
|
DriverGLVendorIdType | DriverGLVendorId |
| Updates the extensions string. More...
|
|
bool | IgnoreDriverBugs |
| Updates the extensions string. More...
|
|
vtkRenderWindow * | GetRenderWindow () |
| Updates the extensions string. More...
|
|
virtual void | SetRenderWindow (vtkRenderWindow *renwin) |
| Updates the extensions string. More...
|
|
virtual void | Update () |
| Updates the extensions string. More...
|
|
| vtkGetStringMacro (ExtensionsString) |
| Returns a string listing all available extensions. More...
|
|
virtual int | ExtensionSupported (const char *name) |
| Returns true if the extension is supported, false otherwise. More...
|
|
virtual vtkOpenGLExtensionManagerFunctionPointer | GetProcAddress (const char *fname) |
| Returns a function pointer to the OpenGL extension function with the given name. More...
|
|
virtual void | LoadExtension (const char *name) |
| Loads all the functions associated with the given extension into the appropriate static members of vtkgl. More...
|
|
virtual int | LoadSupportedExtension (const char *name) |
| Returns true if the extension is supported and loaded successfully, false otherwise. More...
|
|
virtual void | LoadCorePromotedExtension (const char *name) |
| Loads all the functions associated with the given core-promoted extension into the appropriate static members of vtkgl associated with the OpenGL version that promoted the extension as a core feature. More...
|
|
virtual void | LoadAsARBExtension (const char *name) |
| Similar to LoadCorePromotedExtension(). More...
|
|
virtual int | GetDriverVersionMajor () |
| Return the driver's version parts. More...
|
|
virtual int | GetDriverVersionMinor () |
| Updates the extensions string. More...
|
|
virtual int | GetDriverVersionPatch () |
| Updates the extensions string. More...
|
|
virtual int | GetDriverGLVersionMajor () |
| Get GL API version that the driver provides. More...
|
|
virtual int | GetDriverGLVersionMinor () |
| Updates the extensions string. More...
|
|
virtual int | GetDriverGLVersionPatch () |
| Updates the extensions string. More...
|
|
virtual bool | DriverIsATI () |
| Test's for common implementors of rendering drivers. More...
|
|
virtual bool | DriverIsNvidia () |
| Updates the extensions string. More...
|
|
virtual bool | DriverIsIntel () |
| Updates the extensions string. More...
|
|
virtual bool | DriverIsMesa () |
| Updates the extensions string. More...
|
|
virtual bool | DriverIsMicrosoft () |
| Updates the extensions string. More...
|
|
virtual bool | DriverVersionIs (int major) |
| Test for a specific driver version. More...
|
|
virtual bool | DriverVersionIs (int major, int minor) |
| Updates the extensions string. More...
|
|
virtual bool | DriverVersionIs (int major, int minor, int patch) |
| Updates the extensions string. More...
|
|
virtual bool | DriverVersionAtLeast (int major) |
| Test for driver version greater than or equal to the named version. More...
|
|
virtual bool | DriverVersionAtLeast (int major, int minor) |
| Updates the extensions string. More...
|
|
virtual bool | DriverVersionAtLeast (int major, int minor, int patch) |
| Updates the extensions string. More...
|
|
virtual bool | DriverGLVersionIs (int major, int minor, int patch) |
| Test for the driver's GL version as reported in its GL_VERSION string. More...
|
|
virtual bool | DriverGLVersionIs (int major, int minor) |
| Updates the extensions string. More...
|
|
virtual bool | DriverGLRendererIs (const char *str) |
| Test for a specific renderer. More...
|
|
virtual bool | DriverGLRendererHas (const char *str) |
| Updates the extensions string. More...
|
|
virtual bool | DriverGLRendererHasToken (const char *str) |
| Updates the extensions string. More...
|
|
virtual bool | DriverGLRendererIsOSMesa () |
| Test for Mesa's offscreen renderer. More...
|
|
virtual const char * | GetDriverGLVendor () |
| Get the OpenGL version, vendor and renderer strings. More...
|
|
virtual const char * | GetDriverGLVersion () |
| Updates the extensions string. More...
|
|
virtual const char * | GetDriverGLRenderer () |
| Updates the extensions string. More...
|
|
bool | GetIgnoreDriverBugs (const char *description) |
| When set known driver bugs are ignored during driver feature detection. More...
|
|
| vtkSetMacro (IgnoreDriverBugs, bool) |
| Updates the extensions string. More...
|
|
| vtkBooleanMacro (IgnoreDriverBugs, bool) |
| Updates the extensions string. More...
|
|
| vtkOpenGLExtensionManager () |
| Updates the extensions string. More...
|
|
virtual | ~vtkOpenGLExtensionManager () |
| Updates the extensions string. More...
|
|
virtual void | InitializeDriverInformation () |
| Updates the extensions string. More...
|
|
virtual void | ReadOpenGLExtensions () |
| Updates the extensions string. More...
|
|
virtual int | SafeLoadExtension (const char *name) |
| Wrap around the generated vtkgl::LoadExtension to deal with OpenGL 1.2 and its optional part GL_ARB_imaging. More...
|
|
virtual void LoadCorePromotedExtension |
( |
const char * |
name | ) |
|
|
virtual |
Loads all the functions associated with the given core-promoted extension into the appropriate static members of vtkgl associated with the OpenGL version that promoted the extension as a core feature.
This method emits a warning if the requested extension is not supported. It emits an error if the extension does not load successfully.
For instance, extension GL_ARB_multitexture was promoted as a core feature into OpenGL 1.3. An implementation that uses this feature has to (IN THIS ORDER), check if OpenGL 1.3 is supported with ExtensionSupported("GL_VERSION_1_3"), if true, load the extension with LoadExtension("GL_VERSION_1_3"). If false, test for the extension with ExtensionSupported("GL_ARB_multitexture"),if true load the extension with this method LoadCorePromotedExtension("GL_ARB_multitexture"). If any of those loading stage succeeded, use vtgl::ActiveTexture() in any case, NOT vtgl::ActiveTextureARB(). This method avoids the use of if statements everywhere in implementations using core-promoted extensions. Without this method, the implementation code should look like:
int opengl_1_3=extensions->ExtensionSupported("GL_VERSION_1_3");
if(opengl_1_3)
{
extensions->LoadExtension("GL_VERSION_1_3");
}
else
{
if(extensions->ExtensionSupported("GL_ARB_multitexture"))
{
extensions->LoadCorePromotedExtension("GL_ARB_multitexture");
}
else
{
vtkErrorMacro("Required multitexture feature is not supported!");
}
}
...
if(opengl_1_3)
{
vtkgl::ActiveTexture(vtkgl::TEXTURE0)
}
else
{
vtkgl::ActiveTextureARB(vtkgl::TEXTURE0_ARB)
}
Thanks to this method, the code looks like:
int opengl_1_3=extensions->ExtensionSupported("GL_VERSION_1_3");
if(opengl_1_3)
{
extensions->LoadExtension("GL_VERSION_1_3");
}
else
{
if(extensions->ExtensionSupported("GL_ARB_multitexture"))
{
extensions->LoadCorePromotedExtension("GL_ARB_multitexture");
}
else
{
vtkErrorMacro("Required multitexture feature is not supported!");
}
}
...
vtkgl::ActiveTexture(vtkgl::TEXTURE0);