All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HgiImmediateCommandBuffer Class Referenceabstract

The encoders created from this command buffer are assumed to execute the commands immediately in the rendering backend. More...

+ Inheritance diagram for HgiImmediateCommandBuffer:

Public Member Functions

virtual HGI_API
HgiGraphicsEncoderUniquePtr 
CreateGraphicsEncoder (HgiGraphicsEncoderDesc const &desc)=0
 Returns a graphics encoder for temporary use that is ready to execute draw commands. More...
 
virtual HGI_API
HgiBlitEncoderUniquePtr 
CreateBlitEncoder ()=0
 Returns a blit encoder for temporary use that is ready to execute resource copy commands. More...
 

Detailed Description

The encoders created from this command buffer are assumed to execute the commands immediately in the rendering backend.

There is no list of commands that is recorded and submitted later.

XXX HgiImmediateCommandBuffer assists in removing OpenGL from HdSt and Tasks while preserving the 'immediate' nature of how HdSt and Tasks currently expect commands to be executed. In the future code may switch over to deferred command buffers that group together and delay executing commands.

Definition at line 51 of file immediateCommandBuffer.h.

Member Function Documentation

virtual HGI_API HgiBlitEncoderUniquePtr CreateBlitEncoder ( )
pure virtual

Returns a blit encoder for temporary use that is ready to execute resource copy commands.

BlitEncoder is a lightweight object that should be re-acquired each frame (don't hold onto it after EndEncoding).

Implemented in HgiGLImmediateCommandBuffer.

virtual HGI_API HgiGraphicsEncoderUniquePtr CreateGraphicsEncoder ( HgiGraphicsEncoderDesc const &  desc)
pure virtual

Returns a graphics encoder for temporary use that is ready to execute draw commands.

GraphicsEncoder is a lightweight object that should be re-acquired each frame (don't hold onto it after EndEncoding).

Implemented in HgiGLImmediateCommandBuffer.


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