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
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 lastUsedInFrameNo = 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 ,
  ShadingRateMap
}
 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 288 of file qrhigles2_p.h.

Constructor & Destructor Documentation

◆ QGles2ComputePipeline()

QGles2ComputePipeline::QGles2ComputePipeline ( QRhiImplementation * rhi)

Definition at line 6676 of file qrhigles2.cpp.

◆ ~QGles2ComputePipeline()

QGles2ComputePipeline::~QGles2ComputePipeline ( )

Definition at line 6681 of file qrhigles2.cpp.

Member Function Documentation

◆ create()

bool QGles2ComputePipeline::create ( )
overridevirtual

Implements QRhiComputePipeline.

Definition at line 6707 of file qrhigles2.cpp.

◆ 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 6686 of file qrhigles2.cpp.

◆ QRhiGles2

friend class QRhiGles2
friend

Definition at line 303 of file qrhigles2_p.h.

Member Data Documentation

◆ currentSrb

QRhiShaderResourceBindings* QGles2ComputePipeline::currentSrb = nullptr

Definition at line 299 of file qrhigles2_p.h.

◆ currentSrbGeneration

uint QGles2ComputePipeline::currentSrbGeneration = 0

Definition at line 300 of file qrhigles2_p.h.

◆ generation

uint QGles2ComputePipeline::generation = 0

Definition at line 302 of file qrhigles2_p.h.

◆ lastUsedInFrameNo

uint QGles2ComputePipeline::lastUsedInFrameNo = 0

Definition at line 301 of file qrhigles2_p.h.

◆ program

GLuint QGles2ComputePipeline::program = 0

Definition at line 295 of file qrhigles2_p.h.

◆ samplers

QGles2SamplerDescriptionVector QGles2ComputePipeline::samplers

Definition at line 297 of file qrhigles2_p.h.

◆ uniforms

QGles2UniformDescriptionVector QGles2ComputePipeline::uniforms

Definition at line 296 of file qrhigles2_p.h.

◆ uniformState

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

Definition at line 298 of file qrhigles2_p.h.

Referenced by QRhiGles2::bindShaderResources().


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