SbGPUCapabilities Class Reference

List of common graphics capabilities of the device used by a SoGLContext. More...

#include <Inventor/helpers/SbGPUCapabilities.h>

Inheritance diagram for SbGPUCapabilities:
SbGraphicsCapabilities

List of all members.

Public Types

enum  Profile {
  COMPATIBILITY = 0x1,
  CORE = 0x2
}
enum  GpuVendor {
  INTEL_GPU,
  AMD_GPU,
  NVIDIA_GPU,
  UNKNOWN_GPU
}

Public Member Functions

int getVersion () const
Profile getProfile () const
GpuVendor getGpuVendor () const
const SbStringgetRenderer () const
const SbVec2i32getMaxViewportSize () const
int getMaxTextureSize () const
int getMax3DTextureSize () const
int getMaxVertexAttribs () const
int getMaxFixedPipelineTextureUnits () const
int getMaxSamples () const

Friends

std::ostream & operator<< (std::ostream &os, const SbGPUCapabilities &capabilities)

Detailed Description

List of common graphics capabilities of the device used by a SoGLContext.

This structure aims at making algorithms scalable according to the capabilities of the device used for execution. For instance, a texture can be resized if its size is greater than supported hardware size, such as:

    const SbGraphicsCapabilities& caps = SoGLContext::getGraphicsCapabilities();
    if (texSize > caps.maxTextureSize)
      resizeTexture(caps.maxTextureSize);

SEE ALSO

SbGraphicsCapabilities, SoGLContext, SoGLDevice


Member Enumeration Documentation

enumeration of GPU vendor

Enumerator:
INTEL_GPU 
AMD_GPU 
NVIDIA_GPU 
UNKNOWN_GPU 

enumeration of OpenGL profiles

Enumerator:
COMPATIBILITY 
CORE 

Member Function Documentation

GpuVendor SbGPUCapabilities::getGpuVendor (  )  const

GPU vendor.

int SbGPUCapabilities::getMax3DTextureSize (  )  const

GL_MAX_3D_TEXTURE_SIZE.

int SbGPUCapabilities::getMaxFixedPipelineTextureUnits (  )  const

GL_MAX_TEXTURE_UNITS (i.e.

max texture units for fixed pipeline)

int SbGPUCapabilities::getMaxSamples (  )  const

GL_MAX_SAMPLES (i.e.

max number of samples for multisampling)

int SbGPUCapabilities::getMaxTextureSize (  )  const

GL_MAX_TEXTURE_SIZE.

int SbGPUCapabilities::getMaxVertexAttribs (  )  const

GL_MAX_VERTEX_ATTRIBS.

const SbVec2i32& SbGPUCapabilities::getMaxViewportSize (  )  const

GL_MAX_VIEWPORT_DIMS.

Profile SbGPUCapabilities::getProfile (  )  const

GLContext profile.

See Profile enumeration.

const SbString& SbGPUCapabilities::getRenderer (  )  const

Renderer name.

Format depends on GPU

int SbGPUCapabilities::getVersion (  )  const

OpenGL version.

Ex: 440 for OpenGL 4.4


Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  os,
const SbGPUCapabilities capabilities 
) [friend]

List capabilities in human readable format.

Reimplemented from SbGraphicsCapabilities.


The documentation for this class was generated from the following file:

Open Inventor Toolkit reference manual, generated on 15 Mar 2023
Copyright © Thermo Fisher Scientific All rights reserved.
http://www.openinventor.com/