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>.
Loading...
Searching...
No Matches
QGles2ComputePipeline Struct Reference

#include <qrhigles2_p.h>

+ Inheritance diagram for QGles2ComputePipeline:
+ Collaboration diagram for QGles2ComputePipeline:

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.
 
QRhiShaderResourceBindingsshaderResourceBindings () 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
 
QRhirhi () const
 

Public Attributes

GLuint program = 0
 
QGles2UniformDescriptionVector uniforms
 
QGles2SamplerDescriptionVector samplers
 
QGles2UniformState uniformState [QGles2UniformState::MAX_TRACKED_LOCATION+1]
 
QRhiShaderResourceBindingscurrentSrb = nullptr
 
uint currentSrbGeneration = 0
 
uint generation = 0
 

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
 
QRhiShaderResourceBindingsm_shaderResourceBindings = nullptr
 
- Protected Attributes inherited from QRhiResource
QRhiImplementationm_rhi = nullptr
 
quint64 m_id
 
QByteArray m_objectName
 

Detailed Description

Definition at line 285 of file qrhigles2_p.h.

Constructor & Destructor Documentation

◆ QGles2ComputePipeline()

QGles2ComputePipeline::QGles2ComputePipeline ( QRhiImplementation * rhi)

Definition at line 6415 of file qrhigles2.cpp.

◆ ~QGles2ComputePipeline()

QGles2ComputePipeline::~QGles2ComputePipeline ( )

Definition at line 6420 of file qrhigles2.cpp.

References destroy().

+ Here is the call graph for this function:

Member Function Documentation

◆ create()

bool QGles2ComputePipeline::create ( )
overridevirtual

◆ destroy()

void QGles2ComputePipeline::destroy ( )
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.

Note
Resources referenced by commands for the current frame should not be released until the frame is submitted by QRhi::endFrame().

The QRhiResource destructor also performs the same task, so calling this function is not necessary before deleting a QRhiResource.

See also
deleteLater()

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().

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

Friends And Related Symbol Documentation

◆ QRhiGles2

friend class QRhiGles2
friend

Definition at line 299 of file qrhigles2_p.h.

Member Data Documentation

◆ currentSrb

QRhiShaderResourceBindings* QGles2ComputePipeline::currentSrb = nullptr

Definition at line 296 of file qrhigles2_p.h.

Referenced by create().

◆ currentSrbGeneration

uint QGles2ComputePipeline::currentSrbGeneration = 0

Definition at line 297 of file qrhigles2_p.h.

Referenced by create().

◆ generation

uint QGles2ComputePipeline::generation = 0

Definition at line 298 of file qrhigles2_p.h.

Referenced by create().

◆ program

GLuint QGles2ComputePipeline::program = 0

Definition at line 292 of file qrhigles2_p.h.

Referenced by destroy().

◆ samplers

QGles2SamplerDescriptionVector QGles2ComputePipeline::samplers

Definition at line 294 of file qrhigles2_p.h.

◆ uniforms

QGles2UniformDescriptionVector QGles2ComputePipeline::uniforms

Definition at line 293 of file qrhigles2_p.h.

Referenced by create(), and destroy().

◆ uniformState

QGles2UniformState QGles2ComputePipeline::uniformState[QGles2UniformState::MAX_TRACKED_LOCATION+1]

Definition at line 295 of file qrhigles2_p.h.

Referenced by create().


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