GraphicsHelperInterface Class

(Qt3DRender::Render::GraphicsHelperInterface)

Public Types

enum FBOBindMode { FBODraw, FBORead, FBOReadAndDraw }
enum Feature { MRT, Tessellation, UniformBufferObject, BindableFragmentOutputs, ..., MapBuffer }

Public Functions

virtual ~GraphicsHelperInterface()
virtual void alphaTest(GLenum mode1, GLenum mode2) = 0
virtual void bindBufferBase(GLenum target, GLuint index, GLuint buffer) = 0
virtual void bindFragDataLocation(GLuint shader, const QHash<QString, int> &outputs) = 0
virtual void bindFrameBufferAttachment(QOpenGLTexture *texture, const Attachment &attachment) = 0
virtual void bindFrameBufferObject(GLuint frameBufferId, FBOBindMode mode) = 0
virtual void bindShaderStorageBlock(GLuint programId, GLuint shaderStorageBlockIndex, GLuint shaderStorageBlockBinding) = 0
virtual void bindUniformBlock(GLuint programId, GLuint uniformBlockIndex, GLuint uniformBlockBinding) = 0
virtual void blendEquation(GLenum mode) = 0
virtual void blendFuncSeparatei(GLuint buf, GLenum sRGB, GLenum dRGB, GLenum sAlpha, GLenum dAlpha) = 0
virtual void blendFunci(GLuint buf, GLenum sfactor, GLenum dfactor) = 0
virtual void blitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) = 0
virtual GLuint boundFrameBufferObject() = 0
virtual void buildUniformBuffer(const QVariant &v, const ShaderUniform &description, QByteArray &buffer) = 0
virtual bool checkFrameBufferComplete() = 0
virtual void clearBufferf(GLint drawbuffer, const QVector4D &values) = 0
virtual GLuint createFrameBufferObject() = 0
virtual void depthMask(GLenum mode) = 0
virtual void depthTest(GLenum mode) = 0
virtual void disableClipPlane(int clipPlane) = 0
virtual void disablePrimitiveRestart() = 0
virtual void disablei(GLenum cap, GLuint index) = 0
virtual void dispatchCompute(GLuint wx, GLuint wy, GLuint wz) = 0
virtual void drawArrays(GLenum primitiveType, GLint first, GLsizei count) = 0
virtual void drawArraysIndirect(GLenum mode, void *indirect) = 0
virtual void drawArraysInstanced(GLenum primitiveType, GLint first, GLsizei count, GLsizei instances) = 0
virtual void drawArraysInstancedBaseInstance(GLenum primitiveType, GLint first, GLsizei count, GLsizei instances, GLsizei baseinstance) = 0
virtual void drawBuffers(GLsizei n, const int *bufs) = 0
virtual void drawElements(GLenum primitiveType, GLsizei primitiveCount, GLint indexType, void *indices, GLint baseVertex) = 0
virtual void drawElementsIndirect(GLenum mode, GLenum type, void *indirect) = 0
virtual void drawElementsInstancedBaseVertexBaseInstance(GLenum primitiveType, GLsizei primitiveCount, GLint indexType, void *indices, GLsizei instances, GLint baseVertex, GLint baseInstance) = 0
virtual void enableClipPlane(int clipPlane) = 0
virtual void enablePrimitiveRestart(int primitiveRestartIndex) = 0
virtual void enablei(GLenum cap, GLuint index) = 0
virtual void frontFace(GLenum mode) = 0
virtual QSize getRenderBufferDimensions(GLuint renderBufferId) = 0
virtual QSize getTextureDimensions(GLuint textureId, GLenum target, uint level = 0) = 0
virtual void glUniform1fv(GLint location, GLsizei count, const GLfloat *value) = 0
virtual void glUniform1iv(GLint location, GLsizei count, const GLint *value) = 0
virtual void glUniform1uiv(GLint location, GLsizei count, const GLuint *value) = 0
virtual void glUniform2fv(GLint location, GLsizei count, const GLfloat *value) = 0
virtual void glUniform2iv(GLint location, GLsizei count, const GLint *value) = 0
virtual void glUniform2uiv(GLint location, GLsizei count, const GLuint *value) = 0
virtual void glUniform3fv(GLint location, GLsizei count, const GLfloat *value) = 0
virtual void glUniform3iv(GLint location, GLsizei count, const GLint *value) = 0
virtual void glUniform3uiv(GLint location, GLsizei count, const GLuint *value) = 0
virtual void glUniform4fv(GLint location, GLsizei count, const GLfloat *value) = 0
virtual void glUniform4iv(GLint location, GLsizei count, const GLint *value) = 0
virtual void glUniform4uiv(GLint location, GLsizei count, const GLuint *value) = 0
virtual void glUniformMatrix2fv(GLint location, GLsizei count, const GLfloat *value) = 0
virtual void glUniformMatrix2x3fv(GLint location, GLsizei count, const GLfloat *value) = 0
virtual void glUniformMatrix2x4fv(GLint location, GLsizei count, const GLfloat *value) = 0
virtual void glUniformMatrix3fv(GLint location, GLsizei count, const GLfloat *value) = 0
virtual void glUniformMatrix3x2fv(GLint location, GLsizei count, const GLfloat *value) = 0
virtual void glUniformMatrix3x4fv(GLint location, GLsizei count, const GLfloat *value) = 0
virtual void glUniformMatrix4fv(GLint location, GLsizei count, const GLfloat *value) = 0
virtual void glUniformMatrix4x2fv(GLint location, GLsizei count, const GLfloat *value) = 0
virtual void glUniformMatrix4x3fv(GLint location, GLsizei count, const GLfloat *value) = 0
virtual void initializeHelper(QOpenGLContext *context, QAbstractOpenGLFunctions *functions) = 0
virtual char *mapBuffer(GLenum target) = 0
virtual GLint maxClipPlaneCount() = 0
virtual void memoryBarrier(QMemoryBarrier::Operations barriers) = 0
virtual void pointSize(bool programmable, GLfloat value) = 0
virtual QVector<ShaderAttribute> programAttributesAndLocations(GLuint programId) = 0
virtual QVector<ShaderStorageBlock> programShaderStorageBlocks(GLuint programId) = 0
virtual QVector<ShaderUniformBlock> programUniformBlocks(GLuint programId) = 0
virtual QVector<ShaderUniform> programUniformsAndLocations(GLuint programId) = 0
virtual void releaseFrameBufferObject(GLuint frameBufferId) = 0
virtual void setAlphaCoverageEnabled(bool enable) = 0
virtual void setClipPlane(int clipPlane, const QVector3D &normal, float distance) = 0
virtual void setMSAAEnabled(bool enable) = 0
virtual void setSeamlessCubemap(bool enable) = 0
virtual void setVerticesPerPatch(GLint verticesPerPatch) = 0
virtual bool supportsFeature(Feature feature) const = 0
virtual uint uniformByteSize(const ShaderUniform &description) = 0
virtual UniformType uniformTypeFromGLType(GLenum glType) = 0
virtual GLboolean unmapBuffer(GLenum target) = 0
virtual void useProgram(GLuint programId) = 0
virtual void vertexAttribDivisor(GLuint index, GLuint divisor) = 0

Member Type Documentation

enum GraphicsHelperInterface::FBOBindMode

enum GraphicsHelperInterface::Feature

Member Function Documentation

[virtual] GraphicsHelperInterface::~GraphicsHelperInterface()

Destroys the instance of GraphicsHelperInterface. The destructor is virtual.

[pure virtual] void GraphicsHelperInterface::alphaTest(GLenum mode1, GLenum mode2)

[pure virtual] void GraphicsHelperInterface::bindBufferBase(GLenum target, GLuint index, GLuint buffer)

[pure virtual] void GraphicsHelperInterface::bindFragDataLocation(GLuint shader, const QHash<QString, int> &outputs)

[pure virtual] void GraphicsHelperInterface::bindFrameBufferAttachment(QOpenGLTexture *texture, const Attachment &attachment)

[pure virtual] void GraphicsHelperInterface::bindFrameBufferObject(GLuint frameBufferId, FBOBindMode mode)

[pure virtual] void GraphicsHelperInterface::bindShaderStorageBlock(GLuint programId, GLuint shaderStorageBlockIndex, GLuint shaderStorageBlockBinding)

[pure virtual] void GraphicsHelperInterface::bindUniformBlock(GLuint programId, GLuint uniformBlockIndex, GLuint uniformBlockBinding)

[pure virtual] void GraphicsHelperInterface::blendEquation(GLenum mode)

[pure virtual] void GraphicsHelperInterface::blendFuncSeparatei(GLuint buf, GLenum sRGB, GLenum dRGB, GLenum sAlpha, GLenum dAlpha)

[pure virtual] void GraphicsHelperInterface::blendFunci(GLuint buf, GLenum sfactor, GLenum dfactor)

[pure virtual] void GraphicsHelperInterface::blitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)

[pure virtual] GLuint GraphicsHelperInterface::boundFrameBufferObject()

[pure virtual] void GraphicsHelperInterface::buildUniformBuffer(const QVariant &v, const ShaderUniform &description, QByteArray &buffer)

[pure virtual] bool GraphicsHelperInterface::checkFrameBufferComplete()

[pure virtual] void GraphicsHelperInterface::clearBufferf(GLint drawbuffer, const QVector4D &values)

[pure virtual] GLuint GraphicsHelperInterface::createFrameBufferObject()

[pure virtual] void GraphicsHelperInterface::depthMask(GLenum mode)

[pure virtual] void GraphicsHelperInterface::depthTest(GLenum mode)

[pure virtual] void GraphicsHelperInterface::disableClipPlane(int clipPlane)

[pure virtual] void GraphicsHelperInterface::disablePrimitiveRestart()

[pure virtual] void GraphicsHelperInterface::disablei(GLenum cap, GLuint index)

[pure virtual] void GraphicsHelperInterface::dispatchCompute(GLuint wx, GLuint wy, GLuint wz)

[pure virtual] void GraphicsHelperInterface::drawArrays(GLenum primitiveType, GLint first, GLsizei count)

[pure virtual] void GraphicsHelperInterface::drawArraysIndirect(GLenum mode, void *indirect)

[pure virtual] void GraphicsHelperInterface::drawArraysInstanced(GLenum primitiveType, GLint first, GLsizei count, GLsizei instances)

[pure virtual] void GraphicsHelperInterface::drawArraysInstancedBaseInstance(GLenum primitiveType, GLint first, GLsizei count, GLsizei instances, GLsizei baseinstance)

[pure virtual] void GraphicsHelperInterface::drawBuffers(GLsizei n, const int *bufs)

[pure virtual] void GraphicsHelperInterface::drawElements(GLenum primitiveType, GLsizei primitiveCount, GLint indexType, void *indices, GLint baseVertex)

[pure virtual] void GraphicsHelperInterface::drawElementsIndirect(GLenum mode, GLenum type, void *indirect)

[pure virtual] void GraphicsHelperInterface::drawElementsInstancedBaseVertexBaseInstance(GLenum primitiveType, GLsizei primitiveCount, GLint indexType, void *indices, GLsizei instances, GLint baseVertex, GLint baseInstance)

[pure virtual] void GraphicsHelperInterface::enableClipPlane(int clipPlane)

[pure virtual] void GraphicsHelperInterface::enablePrimitiveRestart(int primitiveRestartIndex)

[pure virtual] void GraphicsHelperInterface::enablei(GLenum cap, GLuint index)

[pure virtual] void GraphicsHelperInterface::frontFace(GLenum mode)

[pure virtual] QSize GraphicsHelperInterface::getRenderBufferDimensions(GLuint renderBufferId)

[pure virtual] QSize GraphicsHelperInterface::getTextureDimensions(GLuint textureId, GLenum target, uint level = 0)

[pure virtual] void GraphicsHelperInterface::glUniform1fv(GLint location, GLsizei count, const GLfloat *value)

[pure virtual] void GraphicsHelperInterface::glUniform1iv(GLint location, GLsizei count, const GLint *value)

[pure virtual] void GraphicsHelperInterface::glUniform1uiv(GLint location, GLsizei count, const GLuint *value)

[pure virtual] void GraphicsHelperInterface::glUniform2fv(GLint location, GLsizei count, const GLfloat *value)

[pure virtual] void GraphicsHelperInterface::glUniform2iv(GLint location, GLsizei count, const GLint *value)

[pure virtual] void GraphicsHelperInterface::glUniform2uiv(GLint location, GLsizei count, const GLuint *value)

[pure virtual] void GraphicsHelperInterface::glUniform3fv(GLint location, GLsizei count, const GLfloat *value)

[pure virtual] void GraphicsHelperInterface::glUniform3iv(GLint location, GLsizei count, const GLint *value)

[pure virtual] void GraphicsHelperInterface::glUniform3uiv(GLint location, GLsizei count, const GLuint *value)

[pure virtual] void GraphicsHelperInterface::glUniform4fv(GLint location, GLsizei count, const GLfloat *value)

[pure virtual] void GraphicsHelperInterface::glUniform4iv(GLint location, GLsizei count, const GLint *value)

[pure virtual] void GraphicsHelperInterface::glUniform4uiv(GLint location, GLsizei count, const GLuint *value)

[pure virtual] void GraphicsHelperInterface::glUniformMatrix2fv(GLint location, GLsizei count, const GLfloat *value)

[pure virtual] void GraphicsHelperInterface::glUniformMatrix2x3fv(GLint location, GLsizei count, const GLfloat *value)

[pure virtual] void GraphicsHelperInterface::glUniformMatrix2x4fv(GLint location, GLsizei count, const GLfloat *value)

[pure virtual] void GraphicsHelperInterface::glUniformMatrix3fv(GLint location, GLsizei count, const GLfloat *value)

[pure virtual] void GraphicsHelperInterface::glUniformMatrix3x2fv(GLint location, GLsizei count, const GLfloat *value)

[pure virtual] void GraphicsHelperInterface::glUniformMatrix3x4fv(GLint location, GLsizei count, const GLfloat *value)

[pure virtual] void GraphicsHelperInterface::glUniformMatrix4fv(GLint location, GLsizei count, const GLfloat *value)

[pure virtual] void GraphicsHelperInterface::glUniformMatrix4x2fv(GLint location, GLsizei count, const GLfloat *value)

[pure virtual] void GraphicsHelperInterface::glUniformMatrix4x3fv(GLint location, GLsizei count, const GLfloat *value)

[pure virtual] void GraphicsHelperInterface::initializeHelper(QOpenGLContext *context, QAbstractOpenGLFunctions *functions)

[pure virtual] char *GraphicsHelperInterface::mapBuffer(GLenum target)

[pure virtual] GLint GraphicsHelperInterface::maxClipPlaneCount()

[pure virtual] void GraphicsHelperInterface::memoryBarrier(QMemoryBarrier::Operations barriers)

[pure virtual] void GraphicsHelperInterface::pointSize(bool programmable, GLfloat value)

[pure virtual] QVector<ShaderAttribute> GraphicsHelperInterface::programAttributesAndLocations(GLuint programId)

[pure virtual] QVector<ShaderStorageBlock> GraphicsHelperInterface::programShaderStorageBlocks(GLuint programId)

[pure virtual] QVector<ShaderUniformBlock> GraphicsHelperInterface::programUniformBlocks(GLuint programId)

[pure virtual] QVector<ShaderUniform> GraphicsHelperInterface::programUniformsAndLocations(GLuint programId)

[pure virtual] void GraphicsHelperInterface::releaseFrameBufferObject(GLuint frameBufferId)

[pure virtual] void GraphicsHelperInterface::setAlphaCoverageEnabled(bool enable)

[pure virtual] void GraphicsHelperInterface::setClipPlane(int clipPlane, const QVector3D &normal, float distance)

[pure virtual] void GraphicsHelperInterface::setMSAAEnabled(bool enable)

[pure virtual] void GraphicsHelperInterface::setSeamlessCubemap(bool enable)

[pure virtual] void GraphicsHelperInterface::setVerticesPerPatch(GLint verticesPerPatch)

[pure virtual] bool GraphicsHelperInterface::supportsFeature(Feature feature) const

[pure virtual] uint GraphicsHelperInterface::uniformByteSize(const ShaderUniform &description)

[pure virtual] UniformType GraphicsHelperInterface::uniformTypeFromGLType(GLenum glType)

[pure virtual] GLboolean GraphicsHelperInterface::unmapBuffer(GLenum target)

[pure virtual] void GraphicsHelperInterface::useProgram(GLuint programId)

[pure virtual] void GraphicsHelperInterface::vertexAttribDivisor(GLuint index, GLuint divisor)