Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
|
#include <qrhigles2_p.h>
Public Member Functions | |
QGles2ComputePipeline (QRhiImplementation *rhi) | |
~QGles2ComputePipeline () | |
void | destroy () override |
Releases (or requests deferred releasing of) the underlying native graphics resources. | |
bool | create () override |
Public Member Functions inherited from QRhiComputePipeline | |
QRhiResource::Type | resourceType () const override |
Flags | flags () const |
void | setFlags (Flags f) |
Sets the flags f. | |
QRhiShaderStage | shaderStage () const |
void | setShaderStage (const QRhiShaderStage &stage) |
Sets the shader to use. | |
QRhiShaderResourceBindings * | shaderResourceBindings () const |
void | setShaderResourceBindings (QRhiShaderResourceBindings *srb) |
Associates with srb describing the resource binding layout and the resources (QRhiBuffer, QRhiTexture) themselves. | |
Public Member Functions inherited from QRhiResource | |
virtual | ~QRhiResource () |
Destructor. | |
void | deleteLater () |
When called without a frame being recorded, this function is equivalent to deleting the object. | |
QByteArray | name () const |
void | setName (const QByteArray &name) |
Sets a name for the object. | |
quint64 | globalResourceId () const |
QRhi * | rhi () const |
Friends | |
class | QRhiGles2 |
Additional Inherited Members | |
Public Types inherited from QRhiComputePipeline | |
enum | Flag { CompileShadersWithDebugInfo = 1 << 0 } |
Flag values for describing pipeline options. More... | |
Public Types inherited from QRhiResource | |
enum | Type { Buffer , Texture , Sampler , RenderBuffer , RenderPassDescriptor , SwapChainRenderTarget , TextureRenderTarget , ShaderResourceBindings , GraphicsPipeline , SwapChain , ComputePipeline , CommandBuffer } |
Specifies type of the resource. More... | |
Protected Member Functions inherited from QRhiComputePipeline | |
QRhiComputePipeline (QRhiImplementation *rhi) | |
Protected Member Functions inherited from QRhiResource | |
QRhiResource (QRhiImplementation *rhi) | |
Protected Attributes inherited from QRhiComputePipeline | |
Flags | m_flags |
QRhiShaderStage | m_shaderStage |
QRhiShaderResourceBindings * | m_shaderResourceBindings = nullptr |
Protected Attributes inherited from QRhiResource | |
QRhiImplementation * | m_rhi = nullptr |
quint64 | m_id |
QByteArray | m_objectName |
Definition at line 285 of file qrhigles2_p.h.
QGles2ComputePipeline::QGles2ComputePipeline | ( | QRhiImplementation * | rhi | ) |
Definition at line 6415 of file qrhigles2.cpp.
QGles2ComputePipeline::~QGles2ComputePipeline | ( | ) |
Definition at line 6420 of file qrhigles2.cpp.
References destroy().
|
overridevirtual |
Implements QRhiComputePipeline.
Definition at line 6446 of file qrhigles2.cpp.
References cacheKey(), currentSrb, currentSrbGeneration, QShader::description(), destroy(), QRhi::EnablePipelineCacheDataSave, generation, QShader::GlslShader, QRhiComputePipeline::m_shaderStage, QRhiGles2::ProgramCacheError, QRhiGles2::ProgramCacheHit, QRhiGles2::ProgramCacheMiss, Q_ASSERT, QRHI_RES_RHI, QShader::separateToCombinedImageSamplerMappingList(), QRhiShaderStage::shader(), QRhiShaderStage::shaderVariant(), uniforms, and uniformState.
|
overridevirtual |
Releases (or requests deferred releasing of) the underlying native graphics resources.
Safe to call multiple times, subsequent invocations will be a no-op then.
Once destroy() is called, the QRhiResource instance can be reused, by calling create()
again. That will then result in creating new native graphics resources underneath.
The QRhiResource destructor also performs the same task, so calling this function is not necessary before deleting a QRhiResource.
Implements QRhiResource.
Definition at line 6425 of file qrhigles2.cpp.
References QVarLengthArray< T, Prealloc >::clear(), QRhiGles2::DeferredReleaseEntry::Pipeline, QRhiGles2::DeferredReleaseEntry::pipeline, program, QRHI_RES_RHI, QRhiGles2::DeferredReleaseEntry::type, and uniforms.
Referenced by ~QGles2ComputePipeline(), and create().
|
friend |
Definition at line 299 of file qrhigles2_p.h.
QRhiShaderResourceBindings* QGles2ComputePipeline::currentSrb = nullptr |
Definition at line 296 of file qrhigles2_p.h.
Referenced by create().
uint QGles2ComputePipeline::currentSrbGeneration = 0 |
Definition at line 297 of file qrhigles2_p.h.
Referenced by create().
uint QGles2ComputePipeline::generation = 0 |
Definition at line 298 of file qrhigles2_p.h.
Referenced by create().
GLuint QGles2ComputePipeline::program = 0 |
Definition at line 292 of file qrhigles2_p.h.
Referenced by destroy().
QGles2SamplerDescriptionVector QGles2ComputePipeline::samplers |
Definition at line 294 of file qrhigles2_p.h.
QGles2UniformDescriptionVector QGles2ComputePipeline::uniforms |
Definition at line 293 of file qrhigles2_p.h.
QGles2UniformState QGles2ComputePipeline::uniformState[QGles2UniformState::MAX_TRACKED_LOCATION+1] |
Definition at line 295 of file qrhigles2_p.h.
Referenced by create().