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 766 of file qrhigles2_p.h.

Member Typedef Documentation

◆ ActiveUniformLocationTracker

Definition at line 914 of file qrhigles2_p.h.

Member Enumeration Documentation

◆ ProgramCacheResult

Enumerator
ProgramCacheHit 
ProgramCacheMiss 
ProgramCacheError 

Definition at line 930 of file qrhigles2_p.h.

Constructor & Destructor Documentation

◆ QRhiGles2()

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

Definition at line 634 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 4902 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 2239 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 2302 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 2365 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 4192 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 1297 of file qrhigles2.cpp.

◆ compileShader()

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

Definition at line 5135 of file qrhigles2.cpp.

References f.

◆ create()

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

Implements QRhiImplementation.

Definition at line 762 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 1270 of file qrhigles2.cpp.

◆ createComputePipeline()

QRhiComputePipeline * QRhiGles2::createComputePipeline ( )
overridevirtual

Implements QRhiImplementation.

Definition at line 1898 of file qrhigles2.cpp.

◆ createGraphicsPipeline()

QRhiGraphicsPipeline * QRhiGles2::createGraphicsPipeline ( )
overridevirtual

Implements QRhiImplementation.

Definition at line 1888 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 1856 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 1870 of file qrhigles2.cpp.

◆ createShaderResourceBindings()

QRhiShaderResourceBindings * QRhiGles2::createShaderResourceBindings ( )
overridevirtual

Implements QRhiImplementation.

Definition at line 1893 of file qrhigles2.cpp.

◆ createShadingRateMap()

QRhiShadingRateMap * QRhiGles2::createShadingRateMap ( )
overridevirtual

Implements QRhiImplementation.

Definition at line 1877 of file qrhigles2.cpp.

◆ createSwapChain()

QRhiSwapChain * QRhiGles2::createSwapChain ( )
overridevirtual

Implements QRhiImplementation.

Definition at line 1265 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 1863 of file qrhigles2.cpp.

◆ createTextureRenderTarget()

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

Implements QRhiImplementation.

Definition at line 1882 of file qrhigles2.cpp.

◆ debugMarkBegin()

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

Implements QRhiImplementation.

Definition at line 2197 of file qrhigles2.cpp.

◆ debugMarkEnd()

void QRhiGles2::debugMarkEnd ( QRhiCommandBuffer * cb)
overridevirtual

Implements QRhiImplementation.

Definition at line 2206 of file qrhigles2.cpp.

◆ debugMarkMsg()

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

Implements QRhiImplementation.

Definition at line 2214 of file qrhigles2.cpp.

◆ destroy()

void QRhiGles2::destroy ( )
overridevirtual

Implements QRhiImplementation.

Definition at line 1188 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 1682 of file qrhigles2.cpp.

◆ endComputePass()

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

Implements QRhiImplementation.

Definition at line 4919 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 2275 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 2331 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 2386 of file qrhigles2.cpp.

References f.

◆ endPass()

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

◆ enqueueBarriersForPass()

void QRhiGles2::enqueueBarriersForPass ( QGles2CommandBuffer * cbD)

Definition at line 4700 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 4627 of file qrhigles2.cpp.

◆ enqueueResourceUpdates()

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

Definition at line 2657 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 2521 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 679 of file qrhigles2.cpp.

References contextLost, and needsMakeCurrentDueToSwap.

◆ evaluateFallbackSurface()

QSurface * QRhiGles2::evaluateFallbackSurface ( ) const

Definition at line 667 of file qrhigles2.cpp.

◆ executeBindGraphicsPipeline()

◆ executeCommandBuffer()

void QRhiGles2::executeCommandBuffer ( QRhiCommandBuffer * cb)

Definition at line 3185 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 1219 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 2418 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 5286 of file qrhigles2.cpp.

◆ gatherSamplers()

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

Definition at line 5272 of file qrhigles2.cpp.

◆ gatherUniforms()

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

Definition at line 5235 of file qrhigles2.cpp.

◆ isClipDepthZeroToOne()

bool QRhiGles2::isClipDepthZeroToOne ( ) const
overridevirtual

Implements QRhiImplementation.

Definition at line 1292 of file qrhigles2.cpp.

◆ isDeviceLost()

bool QRhiGles2::isDeviceLost ( ) const
overridevirtual

Implements QRhiImplementation.

Definition at line 1720 of file qrhigles2.cpp.

References contextLost.

◆ isFeatureSupported()

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

Implements QRhiImplementation.

Definition at line 1527 of file qrhigles2.cpp.

◆ isProgramBinaryDiskCacheEnabled()

bool QRhiGles2::isProgramBinaryDiskCacheEnabled ( ) const

Definition at line 5323 of file qrhigles2.cpp.

◆ isTextureFormatSupported()

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

Implements QRhiImplementation.

Definition at line 1467 of file qrhigles2.cpp.

◆ isYUpInFramebuffer()

bool QRhiGles2::isYUpInFramebuffer ( ) const
overridevirtual

Implements QRhiImplementation.

Definition at line 1282 of file qrhigles2.cpp.

◆ isYUpInNDC()

bool QRhiGles2::isYUpInNDC ( ) const
overridevirtual

Implements QRhiImplementation.

Definition at line 1287 of file qrhigles2.cpp.

◆ lastCompletedGpuTime()

double QRhiGles2::lastCompletedGpuTime ( QRhiCommandBuffer * cb)
overridevirtual

Implements QRhiImplementation.

Definition at line 2296 of file qrhigles2.cpp.

References QGles2CommandBuffer::lastGpuTime.

◆ linkProgram()

bool QRhiGles2::linkProgram ( GLuint program)

Definition at line 5179 of file qrhigles2.cpp.

References f.

◆ makeThreadLocalNativeContextCurrent()

bool QRhiGles2::makeThreadLocalNativeContextCurrent ( )
overridevirtual

Implements QRhiImplementation.

Definition at line 1694 of file qrhigles2.cpp.

◆ nativeHandles() [1/2]

const QRhiNativeHandles * QRhiGles2::nativeHandles ( )
overridevirtual

Implements QRhiImplementation.

Definition at line 1677 of file qrhigles2.cpp.

◆ nativeHandles() [2/2]

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

Implements QRhiImplementation.

Definition at line 2223 of file qrhigles2.cpp.

◆ pipelineCacheData()

QByteArray QRhiGles2::pipelineCacheData ( )
overridevirtual

Implements QRhiImplementation.

Definition at line 1734 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 1707 of file qrhigles2.cpp.

◆ resourceLimit()

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

Implements QRhiImplementation.

Definition at line 1637 of file qrhigles2.cpp.

◆ resourceUpdate()

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

Implements QRhiImplementation.

Definition at line 4620 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 5300 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 1789 of file qrhigles2.cpp.

◆ setQueueSubmitParams()

void QRhiGles2::setQueueSubmitParams ( QRhiNativeHandles * params)
overridevirtual

Implements QRhiImplementation.

Definition at line 1702 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 2160 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 5069 of file qrhigles2.cpp.

◆ statistics()

QRhiStats QRhiGles2::statistics ( )
overridevirtual

Implements QRhiImplementation.

Definition at line 1687 of file qrhigles2.cpp.

◆ supportedSampleCounts()

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

Implements QRhiImplementation.

Definition at line 1249 of file qrhigles2.cpp.

◆ supportedShadingRates()

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

Implements QRhiImplementation.

Definition at line 1259 of file qrhigles2.cpp.

◆ trackedBufferBarrier()

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

Definition at line 2479 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 2502 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 3131 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 3141 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 5351 of file qrhigles2.cpp.

◆ trySaveToDiskCache()

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

Definition at line 5441 of file qrhigles2.cpp.

◆ trySaveToPipelineCache()

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

Definition at line 5453 of file qrhigles2.cpp.

◆ ubufAlignment()

int QRhiGles2::ubufAlignment ( ) const
overridevirtual

Implements QRhiImplementation.

Definition at line 1275 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 1103 of file qrhigles2_p.h.

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

◆ ctx

QOpenGLContext* QRhiGles2::ctx = nullptr

Definition at line 944 of file qrhigles2_p.h.

◆ currentSwapChain

QGles2SwapChain* QRhiGles2::currentSwapChain = nullptr

Definition at line 1098 of file qrhigles2_p.h.

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

◆ driverInfoStruct

QRhiDriverInfo QRhiGles2::driverInfoStruct

Definition at line 1102 of file qrhigles2_p.h.

◆ f

◆ fallbackSurface

QSurface* QRhiGles2::fallbackSurface = nullptr

Definition at line 947 of file qrhigles2_p.h.

◆ frameNo

uint QRhiGles2::frameNo = 0

Definition at line 1104 of file qrhigles2_p.h.

◆ GLenum [1/5]

quint64 const GLchar QRhiGles2::GLenum = nullptr

Definition at line 952 of file qrhigles2_p.h.

Referenced by executeBindGraphicsPipeline().

◆ GLenum [2/5]

const void QRhiGles2::GLenum

Definition at line 955 of file qrhigles2_p.h.

◆ GLenum [3/5]

const GLvoid QRhiGles2::GLenum

Definition at line 962 of file qrhigles2_p.h.

Referenced by executeCommandBuffer().

◆ GLenum [4/5]

const GLvoid const GLvoid QRhiGles2::GLenum

Definition at line 964 of file qrhigles2_p.h.

◆ GLenum [5/5]

quint64 const GLchar QRhiGles2::GLenum

Definition at line 971 of file qrhigles2_p.h.

◆ GLint [1/5]

const GLvoid QRhiGles2::GLint

Definition at line 953 of file qrhigles2_p.h.

◆ GLint [2/5]

const void QRhiGles2::GLint

Definition at line 955 of file qrhigles2_p.h.

◆ GLint [3/5]

const GLvoid QRhiGles2::GLint

Definition at line 958 of file qrhigles2_p.h.

Referenced by executeCommandBuffer().

◆ GLint [4/5]

const GLvoid const GLvoid QRhiGles2::GLint = nullptr

Definition at line 965 of file qrhigles2_p.h.

◆ GLint [5/5]

quint64 const GLchar QRhiGles2::GLint

Definition at line 971 of file qrhigles2_p.h.

◆ GLsizei [1/5]

const GLvoid QRhiGles2::GLsizei = nullptr

Definition at line 953 of file qrhigles2_p.h.

◆ GLsizei [2/5]

const void QRhiGles2::GLsizei = nullptr

Definition at line 955 of file qrhigles2_p.h.

◆ GLsizei [3/5]

const GLvoid QRhiGles2::GLsizei = nullptr

Definition at line 959 of file qrhigles2_p.h.

◆ GLsizei [4/5]

quint64 QRhiGles2::GLsizei

Definition at line 970 of file qrhigles2_p.h.

◆ GLsizei [5/5]

quint64 const GLchar QRhiGles2::GLsizei = nullptr

Definition at line 971 of file qrhigles2_p.h.

◆ GLuint [1/4]

const GLvoid const GLvoid QRhiGles2::GLuint

Definition at line 964 of file qrhigles2_p.h.

◆ GLuint [2/4]

QRhiGles2::GLuint

Definition at line 966 of file qrhigles2_p.h.

◆ GLuint [3/4]

quint64 QRhiGles2::GLuint

Definition at line 970 of file qrhigles2_p.h.

◆ GLuint [4/4]

quint64 const GLchar QRhiGles2::GLuint

Definition at line 971 of file qrhigles2_p.h.

◆ importedContext

bool QRhiGles2::importedContext = false

Definition at line 945 of file qrhigles2_p.h.

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

◆ m_pipelineCache

QHash<QByteArray, PipelineCacheData> QRhiGles2::m_pipelineCache

Definition at line 1150 of file qrhigles2_p.h.

◆ m_scratch

struct QRhiGles2::Scratch QRhiGles2::m_scratch

◆ m_shaderCache

QHash<QRhiShaderStage, uint> QRhiGles2::m_shaderCache

Definition at line 1144 of file qrhigles2_p.h.

◆ maybeShareContext

QOpenGLContext* QRhiGles2::maybeShareContext = nullptr

Definition at line 949 of file qrhigles2_p.h.

◆ maybeWindow

QPointer<QWindow> QRhiGles2::maybeWindow = nullptr

Definition at line 948 of file qrhigles2_p.h.

◆ nativeHandlesStruct

QRhiGles2NativeHandles QRhiGles2::nativeHandlesStruct

Definition at line 1101 of file qrhigles2_p.h.

◆ needsMakeCurrentDueToSwap

bool QRhiGles2::needsMakeCurrentDueToSwap = false
mutable

Definition at line 950 of file qrhigles2_p.h.

Referenced by endFrame(), and ensureContext().

◆ ofr

struct QRhiGles2::OffscreenFrame QRhiGles2::ofr

◆ releaseQueue

QList<DeferredReleaseEntry> QRhiGles2::releaseQueue

Definition at line 1135 of file qrhigles2_p.h.

◆ requestedFormat

QSurfaceFormat QRhiGles2::requestedFormat

Definition at line 946 of file qrhigles2_p.h.

◆ rhiFlags

QRhi::Flags QRhiGles2::rhiFlags

Definition at line 943 of file qrhigles2_p.h.

◆ supportedCompressedFormats

QSet<GLint> QRhiGles2::supportedCompressedFormats

Definition at line 1099 of file qrhigles2_p.h.

◆ supportedSampleCountList

QList<int> QRhiGles2::supportedSampleCountList
mutable

Definition at line 1100 of file qrhigles2_p.h.

◆ vao

uint QRhiGles2::vao = 0

Definition at line 974 of file qrhigles2_p.h.


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