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

#include <blitCmds.h>

+ Inheritance diagram for HgiBlitCmds:

Public Member Functions

HGI_API ~HgiBlitCmds () override
 
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
 
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
 
virtual HGI_API void CopyBufferGpuToCpu (HgiBufferGpuToCpuOp const &copyOp)=0
 
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 FillBuffer (HgiBufferHandle const &buffer, uint8_t value)=0
 Fill a buffer with a constant value. More...
 
virtual HGI_API void InsertMemoryBarrier (HgiMemoryBarrier barrier)=0
 
- Public Member Functions inherited from HgiCmds
virtual HGI_API ~HgiCmds ()
 
HGI_API bool IsSubmitted () const
 Returns true if the HgiCmds object has been submitted to GPU. More...
 

Protected Member Functions

HGI_API HgiBlitCmds ()
 
- Protected Member Functions inherited from HgiCmds
HGI_API 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.

Constructor & Destructor Documentation

HGI_API HgiBlitCmds::~HgiBlitCmds ( )
override
HGI_API HgiBlitCmds::HgiBlitCmds ( )
protected

Member Function Documentation

virtual HGI_API void HgiBlitCmds::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 HgiBlitCmds::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 HgiBlitCmds::CopyBufferGpuToGpu ( HgiBufferGpuToGpuOp const &  copyOp)
pure virtual

Copy a buffer resource from GPU to GPU.

Implemented in HgiGLBlitCmds.

virtual HGI_API void HgiBlitCmds::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 HgiBlitCmds::CopyTextureCpuToGpu ( HgiTextureCpuToGpuOp const &  copyOp)
pure virtual

Copy new data from the CPU into a GPU texture.

Implemented in HgiGLBlitCmds.

virtual HGI_API void HgiBlitCmds::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 HgiBlitCmds::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 HgiBlitCmds::FillBuffer ( HgiBufferHandle const &  buffer,
uint8_t  value 
)
pure virtual

Fill a buffer with a constant value.

Implemented in HgiGLBlitCmds.

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

Generate mip maps for a texture.

Implemented in HgiGLBlitCmds.

virtual HGI_API void HgiBlitCmds::InsertMemoryBarrier ( 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 HgiBlitCmds::PopDebugGroup ( )
pure virtual

Pop the lastest debug.

Implemented in HgiGLBlitCmds.

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

Push a debug marker.

Implemented in HgiGLBlitCmds.


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