QOpenGLVersionProfile Class

The QOpenGLVersionProfile class represents the version and if applicable the profile of an OpenGL context. More...

Header: #include <QOpenGLVersionProfile>
CMake: find_package(Qt6 REQUIRED COMPONENTS OpenGL)
target_link_libraries(mytarget PRIVATE Qt6::OpenGL)
qmake: QT += opengl

Public Functions

QOpenGLVersionProfile()
QOpenGLVersionProfile(const QSurfaceFormat &format)
QOpenGLVersionProfile(const QOpenGLVersionProfile &other)
~QOpenGLVersionProfile()
bool hasProfiles() const
bool isLegacyVersion() const
bool isValid() const
QSurfaceFormat::OpenGLContextProfile profile() const
void setProfile(QSurfaceFormat::OpenGLContextProfile profile)
void setVersion(int majorVersion, int minorVersion)
std::pair<int, int> version() const
QOpenGLVersionProfile &operator=(const QOpenGLVersionProfile &rhs)

Detailed Description

An object of this class can be passed to QOpenGLContext::versionFunctions() to request a functions object for a specific version and profile of OpenGL.

It also contains some helper functions to check if a version supports profiles or is a legacy version.

Member Function Documentation

QOpenGLVersionProfile::QOpenGLVersionProfile()

Creates a default invalid QOpenGLVersionProfile object.

[explicit] QOpenGLVersionProfile::QOpenGLVersionProfile(const QSurfaceFormat &format)

Creates a QOpenGLVersionProfile object initialised with the version and profile from format.

QOpenGLVersionProfile::QOpenGLVersionProfile(const QOpenGLVersionProfile &other)

Constructs a copy of other.

[noexcept] QOpenGLVersionProfile::~QOpenGLVersionProfile()

Destroys the QOpenGLVersionProfile object.

bool QOpenGLVersionProfile::hasProfiles() const

Returns true if profiles are supported by the OpenGL version returned by version(). Only OpenGL versions >= 3.2 support profiles.

See also profile() and version().

bool QOpenGLVersionProfile::isLegacyVersion() const

Returns true is the OpenGL version returned by version() contains deprecated functions and does not support profiles i.e. if the OpenGL version is <= 3.1.

bool QOpenGLVersionProfile::isValid() const

Returns true if the version number is valid. Note that for a default constructed QOpenGLVersionProfile object this function will return false.

See also setVersion() and version().

QSurfaceFormat::OpenGLContextProfile QOpenGLVersionProfile::profile() const

Returns the OpenGL profile. Only makes sense if profiles are supported by this version.

See also setProfile().

void QOpenGLVersionProfile::setProfile(QSurfaceFormat::OpenGLContextProfile profile)

Sets the OpenGL profile profile. Only makes sense if profiles are supported by this version.

See also profile().

void QOpenGLVersionProfile::setVersion(int majorVersion, int minorVersion)

Sets the major and minor version numbers to majorVersion and minorVersion respectively.

See also version().

std::pair<int, int> QOpenGLVersionProfile::version() const

Returns a std::pair<int,int> where the components represent the major and minor OpenGL version numbers respectively.

See also setVersion().

QOpenGLVersionProfile &QOpenGLVersionProfile::operator=(const QOpenGLVersionProfile &rhs)

Assigns the version and profile of rhs to this QOpenGLVersionProfile object.

© 2024 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.