|
OpenGL implementation of HgiComputeCmds. More...
#include <computeCmds.h>
Public Member Functions | |
HGIGL_API void | PushDebugGroup (const char *label) override |
Push a debug marker. | |
HGIGL_API void | PopDebugGroup () override |
Pop the last debug marker. | |
HGIGL_API void | BindPipeline (HgiComputePipelineHandle pipeline) override |
Bind a pipeline state object. | |
HGIGL_API void | BindResources (HgiResourceBindingsHandle resources) override |
Bind resources such as textures and uniform buffers. | |
HGIGL_API void | SetConstantValues (HgiComputePipelineHandle pipeline, uint32_t bindIndex, uint32_t byteSize, const void *data) override |
Set Push / Function constants. | |
HGIGL_API void | Dispatch (int dimX, int dimY) override |
Execute a compute shader with provided thread group count in each dimension. | |
HGIGL_API void | InsertMemoryBarrier (HgiMemoryBarrier barrier) override |
Inserts a barrier so that data written to memory by commands before the barrier is available to commands after the barrier. | |
HGIGL_API HgiComputeDispatch | GetDispatchMethod () const override |
Returns the dispatch method for this encoder. | |
virtual HGI_API void | PushDebugGroup (const char *label)=0 |
Push a debug marker. | |
virtual HGI_API void | PopDebugGroup ()=0 |
Pop the last debug marker. | |
virtual HGI_API void | BindPipeline (HgiComputePipelineHandle pipeline)=0 |
Bind a pipeline state object. | |
virtual HGI_API void | BindResources (HgiResourceBindingsHandle resources)=0 |
Bind resources such as textures and uniform buffers. | |
virtual HGI_API void | SetConstantValues (HgiComputePipelineHandle pipeline, uint32_t bindIndex, uint32_t byteSize, const void *data)=0 |
Set Push / Function constants. | |
virtual HGI_API void | Dispatch (int dimX, int dimY)=0 |
Execute a compute shader with provided thread group count in each dimension. | |
virtual HGI_API void | InsertMemoryBarrier (HgiMemoryBarrier barrier)=0 |
Inserts a barrier so that data written to memory by commands before the barrier is available to commands after the barrier. | |
virtual HGI_API HgiComputeDispatch | GetDispatchMethod () const =0 |
Returns the dispatch method for this encoder. | |
Public Member Functions inherited from HgiCmds | |
HGI_API bool | IsSubmitted () const |
Returns true if the HgiCmds object has been submitted to GPU. | |
Protected Member Functions | |
HGIGL_API | HgiGLComputeCmds (HgiGLDevice *device, HgiComputeCmdsDesc const &desc) |
HGIGL_API bool | _Submit (Hgi *hgi, HgiSubmitWaitType wait) override |
Protected Member Functions inherited from HgiCmds | |
virtual HGI_API bool | _Submit (Hgi *hgi, HgiSubmitWaitType wait) |
HGI_API void | _SetSubmitted () |
Friends | |
class | HgiGL |
OpenGL implementation of HgiComputeCmds.
Definition at line 42 of file computeCmds.h.
|
overrideprotectedvirtual |
Reimplemented from HgiCmds.
|
overridevirtual |
Bind a pipeline state object.
Usually you call this right after calling CreateGraphicsCmds to set the graphics pipeline state. The resource bindings used when creating the pipeline must be compatible with the resources bound via BindResources().
Implements HgiComputeCmds.
|
overridevirtual |
Bind resources such as textures and uniform buffers.
Usually you call this right after BindPipeline() and the resources bound must be compatible with the bound pipeline.
Implements HgiComputeCmds.
|
overridevirtual |
Execute a compute shader with provided thread group count in each dimension.
Implements HgiComputeCmds.
|
overridevirtual |
Returns the dispatch method for this encoder.
Implements HgiComputeCmds.
|
overridevirtual |
Inserts a barrier so that data written to memory by commands before the barrier is available to commands after the barrier.
Implements HgiComputeCmds.
|
overridevirtual |
Pop the last debug marker.
Implements HgiComputeCmds.
|
overridevirtual |
Push a debug marker.
Implements HgiComputeCmds.
|
overridevirtual |
Set Push / Function constants.
pipeline
is the compute pipeline that you are binding before the draw call. It contains the program used for the uniform buffer constant values for. bindIndex
is the binding point index in the pipeline's shader to bind the data to. byteSize
is the size of the data you are updating. data
is the data you are copying into the push constants block.
Implements HgiComputeCmds.
|
friend |
Definition at line 77 of file computeCmds.h.