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

A graphics API independent abstraction of resource copy commands. More...

+ Inheritance diagram for HgiBlitCmds:

Public Member Functions

virtual HGI_API void PushDebugGroup (const char *label)=0
 Push a debug marker. More...
 
virtual HGI_API void PopDebugGroup ()=0
 Pop the lastest debug. More...
 
virtual HGI_API void CopyTextureGpuToCpu (HgiTextureGpuToCpuOp const &copyOp)=0
 Copy a texture resource from GPU to CPU. More...
 
virtual HGI_API void CopyTextureCpuToGpu (HgiTextureCpuToGpuOp const &copyOp)=0
 Copy new data from the CPU into a GPU texture. More...
 
virtual HGI_API void CopyBufferGpuToGpu (HgiBufferGpuToGpuOp const &copyOp)=0
 Copy a buffer resource from GPU to GPU. More...
 
virtual HGI_API void CopyBufferCpuToGpu (HgiBufferCpuToGpuOp const &copyOp)=0
 Copy new data from CPU into GPU buffer. More...
 
virtual HGI_API void CopyBufferGpuToCpu (HgiBufferGpuToCpuOp const &copyOp)=0
 Copy new data from GPU into CPU buffer. More...
 
virtual HGI_API void CopyTextureToBuffer (HgiTextureToBufferOp const &copyOp)=0
 Copy a texture resource into a buffer resource from GPU to GPU. More...
 
virtual HGI_API void CopyBufferToTexture (HgiBufferToTextureOp const &copyOp)=0
 Copy a buffer resource into a texture resource from GPU to GPU. More...
 
virtual HGI_API void GenerateMipMaps (HgiTextureHandle const &texture)=0
 Generate mip maps for a texture. More...
 
virtual HGI_API void MemoryBarrier (HgiMemoryBarrier barrier)=0
 Inserts a barrier so that data written to memory by commands before the barrier is available to commands after the barrier. More...
 
- Public Member Functions inherited from HgiCmds
HGI_API bool IsSubmitted () const
 Returns true if the HgiCmds object has been submitted to GPU. More...
 

Additional Inherited Members

- Protected Member Functions inherited from HgiCmds
virtual HGI_API bool _Submit (Hgi *hgi, HgiSubmitWaitType wait)
 
HGI_API void _SetSubmitted ()
 

Detailed Description

A graphics API independent abstraction of resource copy commands.

HgiBlitCmds is a lightweight object that cannot be re-used after it has been submitted. A new cmds object should be acquired for each frame.

Definition at line 54 of file blitCmds.h.

Member Function Documentation

virtual HGI_API void CopyBufferCpuToGpu ( HgiBufferCpuToGpuOp const &  copyOp)
pure virtual

Copy new data from CPU into GPU buffer.

For example copy new data into a uniform block or storage buffer.

Implemented in HgiGLBlitCmds.

virtual HGI_API void CopyBufferGpuToCpu ( HgiBufferGpuToCpuOp const &  copyOp)
pure virtual

Copy new data from GPU into CPU buffer.

Synchronization between GPU writes and CPU reads must be managed by the client by supplying the correct 'wait' flags in SubmitCmds.

Implemented in HgiGLBlitCmds.

virtual HGI_API void CopyBufferGpuToGpu ( HgiBufferGpuToGpuOp const &  copyOp)
pure virtual

Copy a buffer resource from GPU to GPU.

Implemented in HgiGLBlitCmds.

virtual HGI_API void CopyBufferToTexture ( HgiBufferToTextureOp const &  copyOp)
pure virtual

Copy a buffer resource into a texture resource from GPU to GPU.

Implemented in HgiGLBlitCmds.

virtual HGI_API void CopyTextureCpuToGpu ( HgiTextureCpuToGpuOp const &  copyOp)
pure virtual

Copy new data from the CPU into a GPU texture.

Implemented in HgiGLBlitCmds.

virtual HGI_API void CopyTextureGpuToCpu ( HgiTextureGpuToCpuOp const &  copyOp)
pure virtual

Copy a texture resource from GPU to CPU.

Synchronization between GPU writes and CPU reads must be managed by the client by supplying the correct 'wait' flags in SubmitCmds.

Implemented in HgiGLBlitCmds.

virtual HGI_API void CopyTextureToBuffer ( HgiTextureToBufferOp const &  copyOp)
pure virtual

Copy a texture resource into a buffer resource from GPU to GPU.

Implemented in HgiGLBlitCmds.

virtual HGI_API void GenerateMipMaps ( HgiTextureHandle const &  texture)
pure virtual

Generate mip maps for a texture.

Implemented in HgiGLBlitCmds.

virtual HGI_API void MemoryBarrier ( HgiMemoryBarrier  barrier)
pure virtual

Inserts a barrier so that data written to memory by commands before the barrier is available to commands after the barrier.

Implemented in HgiGLBlitCmds.

virtual HGI_API void PopDebugGroup ( )
pure virtual

Pop the lastest debug.

Implemented in HgiGLBlitCmds.

virtual HGI_API void PushDebugGroup ( const char *  label)
pure virtual

Push a debug marker.

Implemented in HgiGLBlitCmds.


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