Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
QRhiGles2 Class Reference

#include <qrhigles2_p.h>

+ Inheritance diagram for QRhiGles2:
+ Collaboration diagram for QRhiGles2:

Classes

struct  Caps
 
struct  DeferredReleaseEntry
 
struct  OffscreenFrame
 
struct  PipelineCacheData
 
struct  Scratch
 

Public Types

enum  ProgramCacheResult { ProgramCacheHit , ProgramCacheMiss , ProgramCacheError }
 
using ActiveUniformLocationTracker = QDuplicateTracker<int, 32>
 

Public Member Functions

 QRhiGles2 (QRhiGles2InitParams *params, QRhiGles2NativeHandles *importDevice=nullptr)
 
bool create (QRhi::Flags flags) override
 
void destroy () override
 
QRhiGraphicsPipelinecreateGraphicsPipeline () override
 
QRhiComputePipelinecreateComputePipeline () override
 
QRhiShaderResourceBindingscreateShaderResourceBindings () override
 
QRhiBuffercreateBuffer (QRhiBuffer::Type type, QRhiBuffer::UsageFlags usage, quint32 size) override
 
QRhiRenderBuffercreateRenderBuffer (QRhiRenderBuffer::Type type, const QSize &pixelSize, int sampleCount, QRhiRenderBuffer::Flags flags, QRhiTexture::Format backingFormatHint) override
 
QRhiTexturecreateTexture (QRhiTexture::Format format, const QSize &pixelSize, int depth, int arraySize, int sampleCount, QRhiTexture::Flags flags) override
 
QRhiSamplercreateSampler (QRhiSampler::Filter magFilter, QRhiSampler::Filter minFilter, QRhiSampler::Filter mipmapMode, QRhiSampler::AddressMode u, QRhiSampler::AddressMode v, QRhiSampler::AddressMode w) override
 
QRhiTextureRenderTargetcreateTextureRenderTarget (const QRhiTextureRenderTargetDescription &desc, QRhiTextureRenderTarget::Flags flags) override
 
QRhiShadingRateMapcreateShadingRateMap () override
 
QRhiSwapChaincreateSwapChain () override
 
QRhi::FrameOpResult beginFrame (QRhiSwapChain *swapChain, QRhi::BeginFrameFlags flags) override
 
QRhi::FrameOpResult endFrame (QRhiSwapChain *swapChain, QRhi::EndFrameFlags flags) override
 
QRhi::FrameOpResult beginOffscreenFrame (QRhiCommandBuffer **cb, QRhi::BeginFrameFlags flags) override
 
QRhi::FrameOpResult endOffscreenFrame (QRhi::EndFrameFlags flags) override
 
QRhi::FrameOpResult finish () override
 
void resourceUpdate (QRhiCommandBuffer *cb, QRhiResourceUpdateBatch *resourceUpdates) override
 
void beginPass (QRhiCommandBuffer *cb, QRhiRenderTarget *rt, const QColor &colorClearValue, const QRhiDepthStencilClearValue &depthStencilClearValue, QRhiResourceUpdateBatch *resourceUpdates, QRhiCommandBuffer::BeginPassFlags flags) override
 
void endPass (QRhiCommandBuffer *cb, QRhiResourceUpdateBatch *resourceUpdates) override
 
void setGraphicsPipeline (QRhiCommandBuffer *cb, QRhiGraphicsPipeline *ps) override
 
void setShaderResources (QRhiCommandBuffer *cb, QRhiShaderResourceBindings *srb, int dynamicOffsetCount, const QRhiCommandBuffer::DynamicOffset *dynamicOffsets) override
 
void setVertexInput (QRhiCommandBuffer *cb, int startBinding, int bindingCount, const QRhiCommandBuffer::VertexInput *bindings, QRhiBuffer *indexBuf, quint32 indexOffset, QRhiCommandBuffer::IndexFormat indexFormat) override
 
void setViewport (QRhiCommandBuffer *cb, const QRhiViewport &viewport) override
 
void setScissor (QRhiCommandBuffer *cb, const QRhiScissor &scissor) override
 
void setBlendConstants (QRhiCommandBuffer *cb, const QColor &c) override
 
void setStencilRef (QRhiCommandBuffer *cb, quint32 refValue) override
 
void setShadingRate (QRhiCommandBuffer *cb, const QSize &coarsePixelSize) override
 
void draw (QRhiCommandBuffer *cb, quint32 vertexCount, quint32 instanceCount, quint32 firstVertex, quint32 firstInstance) override
 
void drawIndexed (QRhiCommandBuffer *cb, quint32 indexCount, quint32 instanceCount, quint32 firstIndex, qint32 vertexOffset, quint32 firstInstance) override
 
void debugMarkBegin (QRhiCommandBuffer *cb, const QByteArray &name) override
 
void debugMarkEnd (QRhiCommandBuffer *cb) override
 
void debugMarkMsg (QRhiCommandBuffer *cb, const QByteArray &msg) override
 
void beginComputePass (QRhiCommandBuffer *cb, QRhiResourceUpdateBatch *resourceUpdates, QRhiCommandBuffer::BeginPassFlags flags) override
 
void endComputePass (QRhiCommandBuffer *cb, QRhiResourceUpdateBatch *resourceUpdates) override
 
void setComputePipeline (QRhiCommandBuffer *cb, QRhiComputePipeline *ps) override
 
void dispatch (QRhiCommandBuffer *cb, int x, int y, int z) override
 
const QRhiNativeHandlesnativeHandles (QRhiCommandBuffer *cb) override
 
void beginExternal (QRhiCommandBuffer *cb) override
 
void endExternal (QRhiCommandBuffer *cb) override
 
double lastCompletedGpuTime (QRhiCommandBuffer *cb) override
 
QList< int > supportedSampleCounts () const override
 
QList< QSizesupportedShadingRates (int sampleCount) const override
 
int ubufAlignment () const override
 
bool isYUpInFramebuffer () const override
 
bool isYUpInNDC () const override
 
bool isClipDepthZeroToOne () const override
 
QMatrix4x4 clipSpaceCorrMatrix () const override
 
bool isTextureFormatSupported (QRhiTexture::Format format, QRhiTexture::Flags flags) const override
 
bool isFeatureSupported (QRhi::Feature feature) const override
 
int resourceLimit (QRhi::ResourceLimit limit) const override
 
const QRhiNativeHandlesnativeHandles () override
 
QRhiDriverInfo driverInfo () const override
 
QRhiStats statistics () override
 
bool makeThreadLocalNativeContextCurrent () override
 
void setQueueSubmitParams (QRhiNativeHandles *params) override
 
void releaseCachedResources () override
 
bool isDeviceLost () const override
 
QByteArray pipelineCacheData () override
 
void setPipelineCacheData (const QByteArray &data) override
 
bool ensureContext (QSurface *surface=nullptr) const
 
QSurfaceevaluateFallbackSurface () const
 
void executeDeferredReleases ()
 
void trackedBufferBarrier (QGles2CommandBuffer *cbD, QGles2Buffer *bufD, QGles2Buffer::Access access)
 
void trackedImageBarrier (QGles2CommandBuffer *cbD, QGles2Texture *texD, QGles2Texture::Access access)
 
void enqueueSubresUpload (QGles2Texture *texD, QGles2CommandBuffer *cbD, int layer, int level, const QRhiTextureSubresourceUploadDescription &subresDesc)
 
void enqueueResourceUpdates (QRhiCommandBuffer *cb, QRhiResourceUpdateBatch *resourceUpdates)
 
void trackedRegisterBuffer (QRhiPassResourceTracker *passResTracker, QGles2Buffer *bufD, QRhiPassResourceTracker::BufferAccess access, QRhiPassResourceTracker::BufferStage stage)
 
void trackedRegisterTexture (QRhiPassResourceTracker *passResTracker, QGles2Texture *texD, QRhiPassResourceTracker::TextureAccess access, QRhiPassResourceTracker::TextureStage stage)
 
void executeCommandBuffer (QRhiCommandBuffer *cb)
 
void executeBindGraphicsPipeline (QGles2CommandBuffer *cbD, QGles2GraphicsPipeline *psD)
 
void bindCombinedSampler (QGles2CommandBuffer *cbD, QGles2Texture *texD, QGles2Sampler *samplerD, void *ps, uint psGeneration, int glslLocation, int *texUnit, bool *activeTexUnitAltered)
 
void bindShaderResources (QGles2CommandBuffer *cbD, QRhiGraphicsPipeline *maybeGraphicsPs, QRhiComputePipeline *maybeComputePs, QRhiShaderResourceBindings *srb, const uint *dynOfsPairs, int dynOfsCount)
 
QGles2RenderTargetDataenqueueBindFramebuffer (QRhiRenderTarget *rt, QGles2CommandBuffer *cbD, bool *wantsColorClear=nullptr, bool *wantsDsClear=nullptr)
 
void enqueueBarriersForPass (QGles2CommandBuffer *cbD)
 
QByteArray shaderSource (const QRhiShaderStage &shaderStage, QShaderVersion *shaderVersion)
 
bool compileShader (GLuint program, const QRhiShaderStage &shaderStage, QShaderVersion *shaderVersion)
 
bool linkProgram (GLuint program)
 
void registerUniformIfActive (const QShaderDescription::BlockVariable &var, const QByteArray &namePrefix, int binding, int baseOffset, GLuint program, ActiveUniformLocationTracker *activeUniformLocations, QGles2UniformDescriptionVector *dst)
 
void gatherUniforms (GLuint program, const QShaderDescription::UniformBlock &ub, ActiveUniformLocationTracker *activeUniformLocations, QGles2UniformDescriptionVector *dst)
 
void gatherSamplers (GLuint program, const QShaderDescription::InOutVariable &v, QGles2SamplerDescriptionVector *dst)
 
void gatherGeneratedSamplers (GLuint program, const QShader::SeparateToCombinedImageSamplerMapping &mapping, QGles2SamplerDescriptionVector *dst)
 
void sanityCheckVertexFragmentInterface (const QShaderDescription &vsDesc, const QShaderDescription &fsDesc)
 
bool isProgramBinaryDiskCacheEnabled () const
 
ProgramCacheResult tryLoadFromDiskOrPipelineCache (const QRhiShaderStage *stages, int stageCount, GLuint program, const QVector< QShaderDescription::InOutVariable > &inputVars, QByteArray *cacheKey)
 
void trySaveToDiskCache (GLuint program, const QByteArray &cacheKey)
 
void trySaveToPipelineCache (GLuint program, const QByteArray &cacheKey, bool force=false)
 
 void (QOPENGLF_APIENTRYP glPolygonMode)(GLenum
 
 void (QOPENGLF_APIENTRYP glTexImage1D)(GLenum
 
const void * void (QOPENGLF_APIENTRYP glTexStorage1D)(GLenum
 
 void (QOPENGLF_APIENTRYP glTexSubImage1D)(GLenum
 
const GLvoid * void (QOPENGLF_APIENTRYP glCopyTexSubImage1D)(GLenum
 
 void (QOPENGLF_APIENTRYP glCompressedTexImage1D)(GLenum
 
const GLvoid * void (QOPENGLF_APIENTRYP glCompressedTexSubImage1D)(GLenum
 
const GLvoid const GLvoid * void (QOPENGLF_APIENTRYP glFramebufferTexture1D)(GLenum
 
 void (QOPENGLF_APIENTRYP glFramebufferTextureMultiviewOVR)(GLenum
 
 void (QOPENGLF_APIENTRYP glQueryCounter)(GLuint
 
 void (QOPENGLF_APIENTRYP glGetQueryObjectui64v)(GLuint
 
quint64void (QOPENGLF_APIENTRYP glObjectLabel)(GLenum
 
quint64 const GLcharvoid (QOPENGLF_APIENTRYP glFramebufferTexture2DMultisampleEXT)(GLenum
 
 void (QOPENGLF_APIENTRYP glFramebufferTextureMultisampleMultiviewOVR)(GLenum
 
 void (QOPENGLF_APIENTRYP glRenderbufferStorageMultisampleEXT)(GLenum
 
- Public Member Functions inherited from QRhiImplementation
virtual ~QRhiImplementation ()
 
virtual QRhi::AdapterList enumerateAdaptersBeforeCreate (QRhiNativeHandles *nativeHandles) const
 
void prepareForCreate (QRhi *rhi, QRhi::Implementation impl, QRhi::Flags flags, QRhiAdapter *adapter)
 
bool isCompressedFormat (QRhiTexture::Format format) const
 
void compressedFormatInfo (QRhiTexture::Format format, const QSize &size, quint32 *bpl, quint32 *byteSize, QSize *blockDim) const
 
void textureFormatInfo (QRhiTexture::Format format, const QSize &size, quint32 *bpl, quint32 *byteSize, quint32 *bytesPerPixel) const
 
bool isStencilSupportingFormat (QRhiTexture::Format format) const
 
void registerResource (QRhiResource *res, bool ownsNativeResources=true)
 
void unregisterResource (QRhiResource *res)
 
void addDeleteLater (QRhiResource *res)
 
void addCleanupCallback (const QRhi::CleanupCallback &callback)
 
void addCleanupCallback (const void *key, const QRhi::CleanupCallback &callback)
 
void removeCleanupCallback (const void *key)
 
bool sanityCheckGraphicsPipeline (QRhiGraphicsPipeline *ps)
 
bool sanityCheckShaderResourceBindings (QRhiShaderResourceBindings *srb)
 
void updateLayoutDesc (QRhiShaderResourceBindings *srb)
 
quint32 pipelineCacheRhiId () const
 
void pipelineCreationStart ()
 
void pipelineCreationEnd ()
 
qint64 totalPipelineCreationTime () const
 
QRhiVertexInputAttribute::Format shaderDescVariableFormatToVertexInputFormat (QShaderDescription::VariableType type) const
 
quint32 byteSizePerVertexForVertexInputFormat (QRhiVertexInputAttribute::Format format) const
 
int effectiveSampleCount (int sampleCount) const
 
void runCleanup ()
 

Public Attributes

QRhi::Flags rhiFlags
 
QOpenGLContextctx = nullptr
 
bool importedContext = false
 
QSurfaceFormat requestedFormat
 
QSurfacefallbackSurface = nullptr
 
QPointer< QWindowmaybeWindow = nullptr
 
QOpenGLContextmaybeShareContext = nullptr
 
bool needsMakeCurrentDueToSwap = false
 
QOpenGLExtensionsf = nullptr
 
 GLenum = nullptr
 
 GLint
 
 GLsizei = nullptr
 
const void GLint
 
const void GLenum
 
const void GLsizei = nullptr
 
const GLvoid GLint
 
const GLvoid GLsizei = nullptr
 
const GLvoid GLenum
 
const GLvoid const GLvoid GLenum
 
const GLvoid const GLvoid GLuint
 
const GLvoid const GLvoid GLint = nullptr
 
 GLuint
 
quint64 GLuint
 
quint64 GLsizei
 
quint64 const GLchar GLenum
 
quint64 const GLchar GLuint
 
quint64 const GLchar GLint
 
quint64 const GLchar GLsizei = nullptr
 
uint vao = 0
 
struct QRhiGles2::Caps caps
 
QGles2SwapChaincurrentSwapChain = nullptr
 
QSet< GLintsupportedCompressedFormats
 
QList< int > supportedSampleCountList
 
QRhiGles2NativeHandles nativeHandlesStruct
 
QRhiDriverInfo driverInfoStruct
 
bool contextLost = false
 
uint frameNo = 0
 
QList< DeferredReleaseEntryreleaseQueue
 
struct QRhiGles2::OffscreenFrame ofr
 
QHash< QRhiShaderStage, uintm_shaderCache
 
QHash< QByteArray, PipelineCacheDatam_pipelineCache
 
struct QRhiGles2::Scratch m_scratch
 
- Public Attributes inherited from QRhiImplementation
QRhiq
 
bool debugMarkers = false
 
int currentFrameSlot = 0
 
bool inFrame = false
 
QRhiAdapterrequestedRhiAdapter = nullptr
 

Additional Inherited Members

- Static Public Member Functions inherited from QRhiImplementation
static QRhiImplementationnewInstance (QRhi::Implementation impl, QRhiInitParams *params, QRhiNativeHandles *importDevice)
 
static const QRhiShaderResourceBinding::DatashaderResourceBindingData (const QRhiShaderResourceBinding &binding)
 
static QRhiShaderResourceBinding::DatashaderResourceBindingData (QRhiShaderResourceBinding &binding)
 
static bool sortedBindingLessThan (const QRhiShaderResourceBinding &a, const QRhiShaderResourceBinding &b)
 
- Static Public Attributes inherited from QRhiImplementation
static const int MAX_SHADER_CACHE_ENTRIES = 128
 

Detailed Description

Definition at line 765 of file qrhigles2_p.h.

Member Typedef Documentation

◆ ActiveUniformLocationTracker

Definition at line 913 of file qrhigles2_p.h.

Member Enumeration Documentation

◆ ProgramCacheResult

Enumerator
ProgramCacheHit 
ProgramCacheMiss 
ProgramCacheError 

Definition at line 929 of file qrhigles2_p.h.

Constructor & Destructor Documentation

◆ QRhiGles2()

QRhiGles2::QRhiGles2 ( QRhiGles2InitParams * params,
QRhiGles2NativeHandles * importDevice = nullptr )

Definition at line 635 of file qrhigles2.cpp.

References QRhiGles2(), and importedContext.

Referenced by QRhiGles2().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Function Documentation

◆ beginComputePass()

void QRhiGles2::beginComputePass ( QRhiCommandBuffer * cb,
QRhiResourceUpdateBatch * resourceUpdates,
QRhiCommandBuffer::BeginPassFlags flags )
overridevirtual

Implements QRhiImplementation.

Definition at line 4894 of file qrhigles2.cpp.

References QGles2CommandBuffer::ComputePass, enqueueBarriersForPass(), enqueueResourceUpdates(), QGles2CommandBuffer::NoPass, QGles2CommandBuffer::recordingPass, and QGles2CommandBuffer::resetCachedState().

+ Here is the call graph for this function:

◆ beginExternal()

void QRhiGles2::beginExternal ( QRhiCommandBuffer * cb)
overridevirtual

Implements QRhiImplementation.

Definition at line 2233 of file qrhigles2.cpp.

References QGles2CommandBuffer::Command::Barrier, QGles2CommandBuffer::Command::cmd, QGles2CommandBuffer::ComputePass, currentSwapChain, executeCommandBuffer(), f, QGles2CommandBuffer::recordingPass, and QGles2CommandBuffer::resetCommands().

+ Here is the call graph for this function:

◆ beginFrame()

QRhi::FrameOpResult QRhiGles2::beginFrame ( QRhiSwapChain * swapChain,
QRhi::BeginFrameFlags flags )
overridevirtual

Implements QRhiImplementation.

Definition at line 2296 of file qrhigles2.cpp.

References QGles2CommandBuffer::Command::BeginFrame, currentSwapChain, QGles2SwapChain::currentTimestampPairIndex, and executeDeferredReleases().

+ Here is the call graph for this function:

◆ beginOffscreenFrame()

QRhi::FrameOpResult QRhiGles2::beginOffscreenFrame ( QRhiCommandBuffer ** cb,
QRhi::BeginFrameFlags flags )
overridevirtual

Implements QRhiImplementation.

Definition at line 2359 of file qrhigles2.cpp.

References executeDeferredReleases().

+ Here is the call graph for this function:

◆ beginPass()

void QRhiGles2::beginPass ( QRhiCommandBuffer * cb,
QRhiRenderTarget * rt,
const QColor & colorClearValue,
const QRhiDepthStencilClearValue & depthStencilClearValue,
QRhiResourceUpdateBatch * resourceUpdates,
QRhiCommandBuffer::BeginPassFlags flags )
overridevirtual

◆ bindCombinedSampler()

void QRhiGles2::bindCombinedSampler ( QGles2CommandBuffer * cbD,
QGles2Texture * texD,
QGles2Sampler * samplerD,
void * ps,
uint psGeneration,
int glslLocation,
int * texUnit,
bool * activeTexUnitAltered )

Definition at line 4184 of file qrhigles2.cpp.

References f.

◆ bindShaderResources()

void QRhiGles2::bindShaderResources ( QGles2CommandBuffer * cbD,
QRhiGraphicsPipeline * maybeGraphicsPs,
QRhiComputePipeline * maybeComputePs,
QRhiShaderResourceBindings * srb,
const uint * dynOfsPairs,
int dynOfsCount )

◆ clipSpaceCorrMatrix()

QMatrix4x4 QRhiGles2::clipSpaceCorrMatrix ( ) const
overridevirtual

Implements QRhiImplementation.

Definition at line 1298 of file qrhigles2.cpp.

◆ compileShader()

bool QRhiGles2::compileShader ( GLuint program,
const QRhiShaderStage & shaderStage,
QShaderVersion * shaderVersion )

Definition at line 5127 of file qrhigles2.cpp.

References f.

◆ create()

bool QRhiGles2::create ( QRhi::Flags flags)
overridevirtual

Implements QRhiImplementation.

Definition at line 763 of file qrhigles2.cpp.

References contextLost, f, and importedContext.

◆ createBuffer()

QRhiBuffer * QRhiGles2::createBuffer ( QRhiBuffer::Type type,
QRhiBuffer::UsageFlags usage,
quint32 size )
overridevirtual

Implements QRhiImplementation.

Definition at line 1271 of file qrhigles2.cpp.

◆ createComputePipeline()

QRhiComputePipeline * QRhiGles2::createComputePipeline ( )
overridevirtual

Implements QRhiImplementation.

Definition at line 1892 of file qrhigles2.cpp.

◆ createGraphicsPipeline()

QRhiGraphicsPipeline * QRhiGles2::createGraphicsPipeline ( )
overridevirtual

Implements QRhiImplementation.

Definition at line 1882 of file qrhigles2.cpp.

◆ createRenderBuffer()

QRhiRenderBuffer * QRhiGles2::createRenderBuffer ( QRhiRenderBuffer::Type type,
const QSize & pixelSize,
int sampleCount,
QRhiRenderBuffer::Flags flags,
QRhiTexture::Format backingFormatHint )
overridevirtual

Implements QRhiImplementation.

Definition at line 1850 of file qrhigles2.cpp.

◆ createSampler()

QRhiSampler * QRhiGles2::createSampler ( QRhiSampler::Filter magFilter,
QRhiSampler::Filter minFilter,
QRhiSampler::Filter mipmapMode,
QRhiSampler::AddressMode u,
QRhiSampler::AddressMode v,
QRhiSampler::AddressMode w )
overridevirtual

Implements QRhiImplementation.

Definition at line 1864 of file qrhigles2.cpp.

◆ createShaderResourceBindings()

QRhiShaderResourceBindings * QRhiGles2::createShaderResourceBindings ( )
overridevirtual

Implements QRhiImplementation.

Definition at line 1887 of file qrhigles2.cpp.

◆ createShadingRateMap()

QRhiShadingRateMap * QRhiGles2::createShadingRateMap ( )
overridevirtual

Implements QRhiImplementation.

Definition at line 1871 of file qrhigles2.cpp.

◆ createSwapChain()

QRhiSwapChain * QRhiGles2::createSwapChain ( )
overridevirtual

Implements QRhiImplementation.

Definition at line 1266 of file qrhigles2.cpp.

◆ createTexture()

QRhiTexture * QRhiGles2::createTexture ( QRhiTexture::Format format,
const QSize & pixelSize,
int depth,
int arraySize,
int sampleCount,
QRhiTexture::Flags flags )
overridevirtual

Implements QRhiImplementation.

Definition at line 1857 of file qrhigles2.cpp.

◆ createTextureRenderTarget()

QRhiTextureRenderTarget * QRhiGles2::createTextureRenderTarget ( const QRhiTextureRenderTargetDescription & desc,
QRhiTextureRenderTarget::Flags flags )
overridevirtual

Implements QRhiImplementation.

Definition at line 1876 of file qrhigles2.cpp.

◆ debugMarkBegin()

void QRhiGles2::debugMarkBegin ( QRhiCommandBuffer * cb,
const QByteArray & name )
overridevirtual

Implements QRhiImplementation.

Definition at line 2191 of file qrhigles2.cpp.

◆ debugMarkEnd()

void QRhiGles2::debugMarkEnd ( QRhiCommandBuffer * cb)
overridevirtual

Implements QRhiImplementation.

Definition at line 2200 of file qrhigles2.cpp.

◆ debugMarkMsg()

void QRhiGles2::debugMarkMsg ( QRhiCommandBuffer * cb,
const QByteArray & msg )
overridevirtual

Implements QRhiImplementation.

Definition at line 2208 of file qrhigles2.cpp.

◆ destroy()

void QRhiGles2::destroy ( )
overridevirtual

Implements QRhiImplementation.

Definition at line 1189 of file qrhigles2.cpp.

References executeDeferredReleases(), f, and importedContext.

+ Here is the call graph for this function:

◆ dispatch()

◆ draw()

void QRhiGles2::draw ( QRhiCommandBuffer * cb,
quint32 vertexCount,
quint32 instanceCount,
quint32 firstVertex,
quint32 firstInstance )
overridevirtual

◆ drawIndexed()

void QRhiGles2::drawIndexed ( QRhiCommandBuffer * cb,
quint32 indexCount,
quint32 instanceCount,
quint32 firstIndex,
qint32 vertexOffset,
quint32 firstInstance )
overridevirtual

◆ driverInfo()

QRhiDriverInfo QRhiGles2::driverInfo ( ) const
overridevirtual

Implements QRhiImplementation.

Definition at line 1676 of file qrhigles2.cpp.

◆ endComputePass()

void QRhiGles2::endComputePass ( QRhiCommandBuffer * cb,
QRhiResourceUpdateBatch * resourceUpdates )
overridevirtual

Implements QRhiImplementation.

Definition at line 4911 of file qrhigles2.cpp.

References QGles2CommandBuffer::ComputePass, enqueueResourceUpdates(), QGles2CommandBuffer::NoPass, and QGles2CommandBuffer::recordingPass.

+ Here is the call graph for this function:

◆ endExternal()

void QRhiGles2::endExternal ( QRhiCommandBuffer * cb)
overridevirtual

Implements QRhiImplementation.

Definition at line 2269 of file qrhigles2.cpp.

References addBoundaryCommand(), QGles2CommandBuffer::currentPassResTrackerIndex, enqueueBarriersForPass(), QGles2CommandBuffer::NoPass, QGles2CommandBuffer::recordingPass, QGles2CommandBuffer::resetCachedState(), and QGles2CommandBuffer::Command::ResetFrame.

+ Here is the call graph for this function:

◆ endFrame()

QRhi::FrameOpResult QRhiGles2::endFrame ( QRhiSwapChain * swapChain,
QRhi::EndFrameFlags flags )
overridevirtual

Implements QRhiImplementation.

Definition at line 2325 of file qrhigles2.cpp.

References currentSwapChain, QGles2SwapChain::currentTimestampPairIndex, QGles2CommandBuffer::Command::EndFrame, executeCommandBuffer(), f, needsMakeCurrentDueToSwap, and QGles2SwapChainTimestamps::TIMESTAMP_PAIRS.

+ Here is the call graph for this function:

◆ endOffscreenFrame()

QRhi::FrameOpResult QRhiGles2::endOffscreenFrame ( QRhi::EndFrameFlags flags)
overridevirtual

Implements QRhiImplementation.

Definition at line 2380 of file qrhigles2.cpp.

References f.

◆ endPass()

void QRhiGles2::endPass ( QRhiCommandBuffer * cb,
QRhiResourceUpdateBatch * resourceUpdates )
overridevirtual

◆ enqueueBarriersForPass()

void QRhiGles2::enqueueBarriersForPass ( QGles2CommandBuffer * cbD)

Definition at line 4692 of file qrhigles2.cpp.

References QGles2CommandBuffer::Command::BarriersForPass, QGles2CommandBuffer::Command::cmd, and QGles2CommandBuffer::currentPassResTrackerIndex.

Referenced by beginComputePass(), beginPass(), and endExternal().

+ Here is the caller graph for this function:

◆ enqueueBindFramebuffer()

QGles2RenderTargetData * QRhiGles2::enqueueBindFramebuffer ( QRhiRenderTarget * rt,
QGles2CommandBuffer * cbD,
bool * wantsColorClear = nullptr,
bool * wantsDsClear = nullptr )

Definition at line 4619 of file qrhigles2.cpp.

◆ enqueueResourceUpdates()

void QRhiGles2::enqueueResourceUpdates ( QRhiCommandBuffer * cb,
QRhiResourceUpdateBatch * resourceUpdates )

Definition at line 2651 of file qrhigles2.cpp.

References QGles2Texture::AccessFramebuffer, QGles2Texture::AccessRead, QGles2Buffer::AccessUpdate, QGles2Texture::AccessUpdate, QRhiResourceUpdateBatchPrivate::activeBufferOpCount, QRhiResourceUpdateBatchPrivate::activeTextureOpCount, QGles2CommandBuffer::Command::BufferSubData, QGles2CommandBuffer::Command::cmd, QRhiBufferData::constData(), QRhiResourceUpdateBatchPrivate::TextureOp::Copy, QGles2CommandBuffer::Command::CopyTex, currentSwapChain, QRhiResourceUpdateBatchPrivate::BufferOp::data, QRhiResourceUpdateBatchPrivate::TextureOp::dst, QRhiResourceUpdateBatchPrivate::BufferOp::DynamicUpdate, QRhiResourceUpdateBatchPrivate::free(), QGles2CommandBuffer::Command::GenMip, QRhiResourceUpdateBatchPrivate::TextureOp::GenMips, QRhiResourceUpdateBatchPrivate::get(), QGles2CommandBuffer::Command::GetBufferSubData, QRhiResourceUpdateBatchPrivate::BufferOp::Read, QRhiResourceUpdateBatchPrivate::TextureOp::Read, QGles2CommandBuffer::Command::ReadPixels, QGles2Texture::specified, QRhiResourceUpdateBatchPrivate::TextureOp::src, QRhiResourceUpdateBatchPrivate::BufferOp::StaticUpload, trackedBufferBarrier(), trackedImageBarrier(), QRhiResourceUpdateBatchPrivate::BufferOp::type, QRhiResourceUpdateBatchPrivate::TextureOp::type, and QRhiResourceUpdateBatchPrivate::TextureOp::Upload.

Referenced by beginComputePass(), beginPass(), endComputePass(), endPass(), and resourceUpdate().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ enqueueSubresUpload()

void QRhiGles2::enqueueSubresUpload ( QGles2Texture * texD,
QGles2CommandBuffer * cbD,
int layer,
int level,
const QRhiTextureSubresourceUploadDescription & subresDesc )

Definition at line 2515 of file qrhigles2.cpp.

References QGles2Texture::AccessUpdate, QGles2CommandBuffer::Command::cmd, QGles2CommandBuffer::Command::CompressedImage, QGles2CommandBuffer::Command::CompressedSubImage, QGles2Texture::specified, QGles2CommandBuffer::Command::SubImage, trackedImageBarrier(), and QGles2Texture::zeroInitialized.

+ Here is the call graph for this function:

◆ ensureContext()

bool QRhiGles2::ensureContext ( QSurface * surface = nullptr) const

Definition at line 680 of file qrhigles2.cpp.

References contextLost, and needsMakeCurrentDueToSwap.

◆ evaluateFallbackSurface()

QSurface * QRhiGles2::evaluateFallbackSurface ( ) const

Definition at line 668 of file qrhigles2.cpp.

◆ executeBindGraphicsPipeline()

◆ executeCommandBuffer()

void QRhiGles2::executeCommandBuffer ( QRhiCommandBuffer * cb)

Definition at line 3179 of file qrhigles2.cpp.

References QGles2CommandBuffer::Command::Barrier, QGles2CommandBuffer::Command::BarriersForPass, QGles2CommandBuffer::Command::BeginFrame, QGles2CommandBuffer::Command::BindComputePipeline, QGles2CommandBuffer::Command::BindFramebuffer, QGles2CommandBuffer::Command::BindGraphicsPipeline, QGles2CommandBuffer::Command::BindIndexBuffer, QGles2CommandBuffer::Command::BindVertexBuffer, QGles2CommandBuffer::Command::BlendConstants, QGles2CommandBuffer::Command::BlitFromRenderbuffer, QGles2CommandBuffer::Command::BlitFromTexture, QGles2CommandBuffer::Command::BufferSubData, QGles2CommandBuffer::Command::Clear, QGles2CommandBuffer::Command::cmd, QGles2CommandBuffer::Command::CompressedImage, QGles2CommandBuffer::Command::CompressedSubImage, QGles2CommandBuffer::Command::CopyTex, QGles2CommandBuffer::Command::Dispatch, QGles2CommandBuffer::Command::Draw, QGles2CommandBuffer::Command::DrawIndexed, CommandBufferExecTrackedState::enabledAttribArrays, QGles2CommandBuffer::Command::EndFrame, executeBindGraphicsPipeline(), f, QGles2CommandBuffer::Command::GenMip, QGles2CommandBuffer::Command::GetBufferSubData, GLenum, GLint, CommandBufferExecTrackedState::instancedAttributesUsed, QGles2CommandBuffer::Command::InvalidateFramebuffer, CommandBufferExecTrackedState::maxUntrackedInstancedAttribute, CommandBufferExecTrackedState::nonzeroAttribDivisor, QGles2CommandBuffer::Command::ReadPixels, QGles2CommandBuffer::Command::Scissor, QGles2CommandBuffer::Command::StencilRef, QGles2CommandBuffer::Command::SubImage, CommandBufferExecTrackedState::TRACKED_ATTRIB_COUNT, QGles2CommandBuffer::Command::Viewport, void(), void(), and void().

Referenced by beginExternal(), endFrame(), and finish().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ executeDeferredReleases()

void QRhiGles2::executeDeferredReleases ( )

Definition at line 1220 of file qrhigles2.cpp.

References QRhiGles2::DeferredReleaseEntry::Buffer, f, QRhiGles2::DeferredReleaseEntry::Pipeline, QRhiGles2::DeferredReleaseEntry::RenderBuffer, QRhiGles2::DeferredReleaseEntry::Texture, QRhiGles2::DeferredReleaseEntry::TextureRenderTarget, and QRhiGles2::DeferredReleaseEntry::type.

Referenced by beginFrame(), beginOffscreenFrame(), and destroy().

+ Here is the caller graph for this function:

◆ finish()

QRhi::FrameOpResult QRhiGles2::finish ( )
overridevirtual

Implements QRhiImplementation.

Definition at line 2412 of file qrhigles2.cpp.

References currentSwapChain, executeCommandBuffer(), f, and QGles2CommandBuffer::NoPass.

+ Here is the call graph for this function:

◆ gatherGeneratedSamplers()

void QRhiGles2::gatherGeneratedSamplers ( GLuint program,
const QShader::SeparateToCombinedImageSamplerMapping & mapping,
QGles2SamplerDescriptionVector * dst )

Definition at line 5278 of file qrhigles2.cpp.

◆ gatherSamplers()

void QRhiGles2::gatherSamplers ( GLuint program,
const QShaderDescription::InOutVariable & v,
QGles2SamplerDescriptionVector * dst )

Definition at line 5264 of file qrhigles2.cpp.

◆ gatherUniforms()

void QRhiGles2::gatherUniforms ( GLuint program,
const QShaderDescription::UniformBlock & ub,
ActiveUniformLocationTracker * activeUniformLocations,
QGles2UniformDescriptionVector * dst )

Definition at line 5227 of file qrhigles2.cpp.

◆ isClipDepthZeroToOne()

bool QRhiGles2::isClipDepthZeroToOne ( ) const
overridevirtual

Implements QRhiImplementation.

Definition at line 1293 of file qrhigles2.cpp.

◆ isDeviceLost()

bool QRhiGles2::isDeviceLost ( ) const
overridevirtual

Implements QRhiImplementation.

Definition at line 1714 of file qrhigles2.cpp.

References contextLost.

◆ isFeatureSupported()

bool QRhiGles2::isFeatureSupported ( QRhi::Feature feature) const
overridevirtual

Implements QRhiImplementation.

Definition at line 1528 of file qrhigles2.cpp.

◆ isProgramBinaryDiskCacheEnabled()

bool QRhiGles2::isProgramBinaryDiskCacheEnabled ( ) const

Definition at line 5315 of file qrhigles2.cpp.

◆ isTextureFormatSupported()

bool QRhiGles2::isTextureFormatSupported ( QRhiTexture::Format format,
QRhiTexture::Flags flags ) const
overridevirtual

Implements QRhiImplementation.

Definition at line 1468 of file qrhigles2.cpp.

◆ isYUpInFramebuffer()

bool QRhiGles2::isYUpInFramebuffer ( ) const
overridevirtual

Implements QRhiImplementation.

Definition at line 1283 of file qrhigles2.cpp.

◆ isYUpInNDC()

bool QRhiGles2::isYUpInNDC ( ) const
overridevirtual

Implements QRhiImplementation.

Definition at line 1288 of file qrhigles2.cpp.

◆ lastCompletedGpuTime()

double QRhiGles2::lastCompletedGpuTime ( QRhiCommandBuffer * cb)
overridevirtual

Implements QRhiImplementation.

Definition at line 2290 of file qrhigles2.cpp.

References QGles2CommandBuffer::lastGpuTime.

◆ linkProgram()

bool QRhiGles2::linkProgram ( GLuint program)

Definition at line 5171 of file qrhigles2.cpp.

References f.

◆ makeThreadLocalNativeContextCurrent()

bool QRhiGles2::makeThreadLocalNativeContextCurrent ( )
overridevirtual

Implements QRhiImplementation.

Definition at line 1688 of file qrhigles2.cpp.

◆ nativeHandles() [1/2]

const QRhiNativeHandles * QRhiGles2::nativeHandles ( )
overridevirtual

Implements QRhiImplementation.

Definition at line 1671 of file qrhigles2.cpp.

◆ nativeHandles() [2/2]

const QRhiNativeHandles * QRhiGles2::nativeHandles ( QRhiCommandBuffer * cb)
overridevirtual

Implements QRhiImplementation.

Definition at line 2217 of file qrhigles2.cpp.

◆ pipelineCacheData()

QByteArray QRhiGles2::pipelineCacheData ( )
overridevirtual

Implements QRhiImplementation.

Definition at line 1728 of file qrhigles2.cpp.

References QGles2PipelineCacheDataHeader::driver.

◆ registerUniformIfActive()

void QRhiGles2::registerUniformIfActive ( const QShaderDescription::BlockVariable & var,
const QByteArray & namePrefix,
int binding,
int baseOffset,
GLuint program,
ActiveUniformLocationTracker * activeUniformLocations,
QGles2UniformDescriptionVector * dst )

◆ releaseCachedResources()

void QRhiGles2::releaseCachedResources ( )
overridevirtual

Implements QRhiImplementation.

Definition at line 1701 of file qrhigles2.cpp.

◆ resourceLimit()

int QRhiGles2::resourceLimit ( QRhi::ResourceLimit limit) const
overridevirtual

Implements QRhiImplementation.

Definition at line 1631 of file qrhigles2.cpp.

◆ resourceUpdate()

void QRhiGles2::resourceUpdate ( QRhiCommandBuffer * cb,
QRhiResourceUpdateBatch * resourceUpdates )
overridevirtual

Implements QRhiImplementation.

Definition at line 4612 of file qrhigles2.cpp.

References enqueueResourceUpdates().

+ Here is the call graph for this function:

◆ sanityCheckVertexFragmentInterface()

void QRhiGles2::sanityCheckVertexFragmentInterface ( const QShaderDescription & vsDesc,
const QShaderDescription & fsDesc )

Definition at line 5292 of file qrhigles2.cpp.

◆ setBlendConstants()

void QRhiGles2::setBlendConstants ( QRhiCommandBuffer * cb,
const QColor & c )
overridevirtual

◆ setComputePipeline()

◆ setGraphicsPipeline()

◆ setPipelineCacheData()

void QRhiGles2::setPipelineCacheData ( const QByteArray & data)
overridevirtual

Implements QRhiImplementation.

Definition at line 1783 of file qrhigles2.cpp.

◆ setQueueSubmitParams()

void QRhiGles2::setQueueSubmitParams ( QRhiNativeHandles * params)
overridevirtual

Implements QRhiImplementation.

Definition at line 1696 of file qrhigles2.cpp.

◆ setScissor()

void QRhiGles2::setScissor ( QRhiCommandBuffer * cb,
const QRhiScissor & scissor )
overridevirtual

◆ setShaderResources()

◆ setShadingRate()

void QRhiGles2::setShadingRate ( QRhiCommandBuffer * cb,
const QSize & coarsePixelSize )
overridevirtual

Implements QRhiImplementation.

Definition at line 2154 of file qrhigles2.cpp.

◆ setStencilRef()

◆ setVertexInput()

void QRhiGles2::setVertexInput ( QRhiCommandBuffer * cb,
int startBinding,
int bindingCount,
const QRhiCommandBuffer::VertexInput * bindings,
QRhiBuffer * indexBuf,
quint32 indexOffset,
QRhiCommandBuffer::IndexFormat indexFormat )
overridevirtual

◆ setViewport()

void QRhiGles2::setViewport ( QRhiCommandBuffer * cb,
const QRhiViewport & viewport )
overridevirtual

◆ shaderSource()

QByteArray QRhiGles2::shaderSource ( const QRhiShaderStage & shaderStage,
QShaderVersion * shaderVersion )

Definition at line 5061 of file qrhigles2.cpp.

◆ statistics()

QRhiStats QRhiGles2::statistics ( )
overridevirtual

Implements QRhiImplementation.

Definition at line 1681 of file qrhigles2.cpp.

◆ supportedSampleCounts()

QList< int > QRhiGles2::supportedSampleCounts ( ) const
overridevirtual

Implements QRhiImplementation.

Definition at line 1250 of file qrhigles2.cpp.

◆ supportedShadingRates()

QList< QSize > QRhiGles2::supportedShadingRates ( int sampleCount) const
overridevirtual

Implements QRhiImplementation.

Definition at line 1260 of file qrhigles2.cpp.

◆ trackedBufferBarrier()

void QRhiGles2::trackedBufferBarrier ( QGles2CommandBuffer * cbD,
QGles2Buffer * bufD,
QGles2Buffer::Access access )

Definition at line 2473 of file qrhigles2.cpp.

References QGles2Buffer::UsageState::access, QGles2CommandBuffer::Command::Barrier, bufferAccessIsWrite(), QGles2CommandBuffer::Command::cmd, QGles2CommandBuffer::NoPass, QGles2CommandBuffer::recordingPass, and QGles2Buffer::usageState.

Referenced by enqueueResourceUpdates().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ trackedImageBarrier()

void QRhiGles2::trackedImageBarrier ( QGles2CommandBuffer * cbD,
QGles2Texture * texD,
QGles2Texture::Access access )

Definition at line 2496 of file qrhigles2.cpp.

References QGles2Texture::UsageState::access, QGles2CommandBuffer::Command::Barrier, QGles2CommandBuffer::Command::cmd, QGles2CommandBuffer::NoPass, QGles2CommandBuffer::recordingPass, textureAccessIsWrite(), and QGles2Texture::usageState.

Referenced by enqueueResourceUpdates(), and enqueueSubresUpload().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ trackedRegisterBuffer()

void QRhiGles2::trackedRegisterBuffer ( QRhiPassResourceTracker * passResTracker,
QGles2Buffer * bufD,
QRhiPassResourceTracker::BufferAccess access,
QRhiPassResourceTracker::BufferStage stage )

Definition at line 3125 of file qrhigles2.cpp.

References QGles2Buffer::UsageState::access, QRhiPassResourceTracker::registerBuffer(), toGlAccess(), toPassTrackerUsageState(), and QGles2Buffer::usageState.

Referenced by setShaderResources(), and setVertexInput().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ trackedRegisterTexture()

void QRhiGles2::trackedRegisterTexture ( QRhiPassResourceTracker * passResTracker,
QGles2Texture * texD,
QRhiPassResourceTracker::TextureAccess access,
QRhiPassResourceTracker::TextureStage stage )

Definition at line 3135 of file qrhigles2.cpp.

References QGles2Texture::UsageState::access, QRhiPassResourceTracker::registerTexture(), toGlAccess(), toPassTrackerUsageState(), and QGles2Texture::usageState.

Referenced by setShaderResources().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ tryLoadFromDiskOrPipelineCache()

QRhiGles2::ProgramCacheResult QRhiGles2::tryLoadFromDiskOrPipelineCache ( const QRhiShaderStage * stages,
int stageCount,
GLuint program,
const QVector< QShaderDescription::InOutVariable > & inputVars,
QByteArray * cacheKey )

Definition at line 5343 of file qrhigles2.cpp.

◆ trySaveToDiskCache()

void QRhiGles2::trySaveToDiskCache ( GLuint program,
const QByteArray & cacheKey )

Definition at line 5433 of file qrhigles2.cpp.

◆ trySaveToPipelineCache()

void QRhiGles2::trySaveToPipelineCache ( GLuint program,
const QByteArray & cacheKey,
bool force = false )

Definition at line 5445 of file qrhigles2.cpp.

◆ ubufAlignment()

int QRhiGles2::ubufAlignment ( ) const
overridevirtual

Implements QRhiImplementation.

Definition at line 1276 of file qrhigles2.cpp.

◆ void() [1/15]

QRhiGles2::void ( QOPENGLF_APIENTRYP glCompressedTexImage1D)

Referenced by executeCommandBuffer().

+ Here is the caller graph for this function:

◆ void() [2/15]

const GLvoid * QRhiGles2::void ( QOPENGLF_APIENTRYP glCompressedTexSubImage1D)

◆ void() [3/15]

const GLvoid * QRhiGles2::void ( QOPENGLF_APIENTRYP glCopyTexSubImage1D)

◆ void() [4/15]

const GLvoid const GLvoid * QRhiGles2::void ( QOPENGLF_APIENTRYP glFramebufferTexture1D)

◆ void() [5/15]

quint64 const GLchar * QRhiGles2::void ( QOPENGLF_APIENTRYP glFramebufferTexture2DMultisampleEXT)

◆ void() [6/15]

QRhiGles2::void ( QOPENGLF_APIENTRYP glFramebufferTextureMultisampleMultiviewOVR)

◆ void() [7/15]

QRhiGles2::void ( QOPENGLF_APIENTRYP glFramebufferTextureMultiviewOVR)

◆ void() [8/15]

QRhiGles2::void ( QOPENGLF_APIENTRYP glGetQueryObjectui64v)

◆ void() [9/15]

quint64 * QRhiGles2::void ( QOPENGLF_APIENTRYP glObjectLabel)

◆ void() [10/15]

QRhiGles2::void ( QOPENGLF_APIENTRYP glPolygonMode)

◆ void() [11/15]

QRhiGles2::void ( QOPENGLF_APIENTRYP glQueryCounter)

Referenced by executeCommandBuffer().

+ Here is the caller graph for this function:

◆ void() [12/15]

QRhiGles2::void ( QOPENGLF_APIENTRYP glRenderbufferStorageMultisampleEXT)

◆ void() [13/15]

QRhiGles2::void ( QOPENGLF_APIENTRYP glTexImage1D)

◆ void() [14/15]

const void * QRhiGles2::void ( QOPENGLF_APIENTRYP glTexStorage1D)

◆ void() [15/15]

QRhiGles2::void ( QOPENGLF_APIENTRYP glTexSubImage1D)

Referenced by executeCommandBuffer().

+ Here is the caller graph for this function:

Member Data Documentation

◆ caps

struct QRhiGles2::Caps QRhiGles2::caps

◆ contextLost

bool QRhiGles2::contextLost = false
mutable

Definition at line 1102 of file qrhigles2_p.h.

Referenced by create(), ensureContext(), and isDeviceLost().

◆ ctx

QOpenGLContext* QRhiGles2::ctx = nullptr

Definition at line 943 of file qrhigles2_p.h.

◆ currentSwapChain

QGles2SwapChain* QRhiGles2::currentSwapChain = nullptr

Definition at line 1097 of file qrhigles2_p.h.

Referenced by beginExternal(), beginFrame(), endFrame(), enqueueResourceUpdates(), and finish().

◆ driverInfoStruct

QRhiDriverInfo QRhiGles2::driverInfoStruct

Definition at line 1101 of file qrhigles2_p.h.

◆ f

◆ fallbackSurface

QSurface* QRhiGles2::fallbackSurface = nullptr

Definition at line 946 of file qrhigles2_p.h.

◆ frameNo

uint QRhiGles2::frameNo = 0

Definition at line 1103 of file qrhigles2_p.h.

◆ GLenum [1/5]

quint64 const GLchar QRhiGles2::GLenum = nullptr

Definition at line 951 of file qrhigles2_p.h.

Referenced by executeBindGraphicsPipeline().

◆ GLenum [2/5]

const void QRhiGles2::GLenum

Definition at line 954 of file qrhigles2_p.h.

◆ GLenum [3/5]

const GLvoid QRhiGles2::GLenum

Definition at line 961 of file qrhigles2_p.h.

Referenced by executeCommandBuffer().

◆ GLenum [4/5]

const GLvoid const GLvoid QRhiGles2::GLenum

Definition at line 963 of file qrhigles2_p.h.

◆ GLenum [5/5]

quint64 const GLchar QRhiGles2::GLenum

Definition at line 970 of file qrhigles2_p.h.

◆ GLint [1/5]

const GLvoid QRhiGles2::GLint

Definition at line 952 of file qrhigles2_p.h.

◆ GLint [2/5]

const void QRhiGles2::GLint

Definition at line 954 of file qrhigles2_p.h.

◆ GLint [3/5]

const GLvoid QRhiGles2::GLint

Definition at line 957 of file qrhigles2_p.h.

Referenced by executeCommandBuffer().

◆ GLint [4/5]

const GLvoid const GLvoid QRhiGles2::GLint = nullptr

Definition at line 964 of file qrhigles2_p.h.

◆ GLint [5/5]

quint64 const GLchar QRhiGles2::GLint

Definition at line 970 of file qrhigles2_p.h.

◆ GLsizei [1/5]

const GLvoid QRhiGles2::GLsizei = nullptr

Definition at line 952 of file qrhigles2_p.h.

◆ GLsizei [2/5]

const void QRhiGles2::GLsizei = nullptr

Definition at line 954 of file qrhigles2_p.h.

◆ GLsizei [3/5]

const GLvoid QRhiGles2::GLsizei = nullptr

Definition at line 958 of file qrhigles2_p.h.

◆ GLsizei [4/5]

quint64 QRhiGles2::GLsizei

Definition at line 969 of file qrhigles2_p.h.

◆ GLsizei [5/5]

quint64 const GLchar QRhiGles2::GLsizei = nullptr

Definition at line 970 of file qrhigles2_p.h.

◆ GLuint [1/4]

const GLvoid const GLvoid QRhiGles2::GLuint

Definition at line 963 of file qrhigles2_p.h.

◆ GLuint [2/4]

QRhiGles2::GLuint

Definition at line 965 of file qrhigles2_p.h.

◆ GLuint [3/4]

quint64 QRhiGles2::GLuint

Definition at line 969 of file qrhigles2_p.h.

◆ GLuint [4/4]

quint64 const GLchar QRhiGles2::GLuint

Definition at line 970 of file qrhigles2_p.h.

◆ importedContext

bool QRhiGles2::importedContext = false

Definition at line 944 of file qrhigles2_p.h.

Referenced by QRhiGles2(), create(), and destroy().

◆ m_pipelineCache

QHash<QByteArray, PipelineCacheData> QRhiGles2::m_pipelineCache

Definition at line 1149 of file qrhigles2_p.h.

◆ m_scratch

struct QRhiGles2::Scratch QRhiGles2::m_scratch

◆ m_shaderCache

QHash<QRhiShaderStage, uint> QRhiGles2::m_shaderCache

Definition at line 1143 of file qrhigles2_p.h.

◆ maybeShareContext

QOpenGLContext* QRhiGles2::maybeShareContext = nullptr

Definition at line 948 of file qrhigles2_p.h.

◆ maybeWindow

QPointer<QWindow> QRhiGles2::maybeWindow = nullptr

Definition at line 947 of file qrhigles2_p.h.

◆ nativeHandlesStruct

QRhiGles2NativeHandles QRhiGles2::nativeHandlesStruct

Definition at line 1100 of file qrhigles2_p.h.

◆ needsMakeCurrentDueToSwap

bool QRhiGles2::needsMakeCurrentDueToSwap = false
mutable

Definition at line 949 of file qrhigles2_p.h.

Referenced by endFrame(), and ensureContext().

◆ ofr

struct QRhiGles2::OffscreenFrame QRhiGles2::ofr

◆ releaseQueue

QList<DeferredReleaseEntry> QRhiGles2::releaseQueue

Definition at line 1134 of file qrhigles2_p.h.

◆ requestedFormat

QSurfaceFormat QRhiGles2::requestedFormat

Definition at line 945 of file qrhigles2_p.h.

◆ rhiFlags

QRhi::Flags QRhiGles2::rhiFlags

Definition at line 942 of file qrhigles2_p.h.

◆ supportedCompressedFormats

QSet<GLint> QRhiGles2::supportedCompressedFormats

Definition at line 1098 of file qrhigles2_p.h.

◆ supportedSampleCountList

QList<int> QRhiGles2::supportedSampleCountList
mutable

Definition at line 1099 of file qrhigles2_p.h.

◆ vao

uint QRhiGles2::vao = 0

Definition at line 973 of file qrhigles2_p.h.


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