24#ifndef PXR_IMAGING_HGI_BLIT_CMDS_H
25#define PXR_IMAGING_HGI_BLIT_CMDS_H
28#include "pxr/imaging/hgi/api.h"
29#include "pxr/imaging/hgi/buffer.h"
30#include "pxr/imaging/hgi/cmds.h"
31#include "pxr/imaging/hgi/texture.h"
34PXR_NAMESPACE_OPEN_SCOPE
43struct HgiResolveImageOp;
45using HgiBlitCmdsUniquePtr = std::unique_ptr<class HgiBlitCmds>;
125PXR_NAMESPACE_CLOSE_SCOPE
A graphics API independent abstraction of resource copy commands.
virtual HGI_API void CopyBufferGpuToGpu(HgiBufferGpuToGpuOp const ©Op)=0
Copy a buffer resource from GPU to GPU.
virtual HGI_API void CopyBufferCpuToGpu(HgiBufferCpuToGpuOp const ©Op)=0
Copy new data from CPU into GPU buffer.
virtual HGI_API void PushDebugGroup(const char *label)=0
Push a debug marker.
virtual HGI_API void CopyBufferToTexture(HgiBufferToTextureOp const ©Op)=0
Copy a buffer resource into a texture resource from GPU to GPU.
virtual HGI_API void PopDebugGroup()=0
Pop the lastest debug.
virtual HGI_API void GenerateMipMaps(HgiTextureHandle const &texture)=0
Generate mip maps for a texture.
virtual HGI_API void CopyTextureToBuffer(HgiTextureToBufferOp const ©Op)=0
Copy a texture resource into a buffer resource from GPU to GPU.
virtual HGI_API void CopyTextureCpuToGpu(HgiTextureCpuToGpuOp const ©Op)=0
Copy new data from the CPU into a GPU texture.
virtual HGI_API void CopyBufferGpuToCpu(HgiBufferGpuToCpuOp const ©Op)=0
Copy new data from GPU into CPU buffer.
virtual HGI_API void FillBuffer(HgiBufferHandle const &buffer, uint8_t value)=0
Fill a buffer with a constant value.
virtual HGI_API void CopyTextureGpuToCpu(HgiTextureGpuToCpuOp const ©Op)=0
Copy a texture resource from GPU to CPU.
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 comma...
Graphics commands are recorded in 'cmds' objects which are later submitted to hgi.
Describes the properties needed to copy buffer data from CPU to GPU.
Describes the properties needed to copy buffer data from GPU to CPU.
Describes the properties needed to copy buffer data from GPU to GPU.
Describes the properties needed to copy GPU buffer data into a GPU texture.
Describes the properties needed to copy texture data from CPU to GPU.
Describes the properties needed to copy texture data from GPU to CPU.
Describes the properties needed to copy GPU texture data into a GPU buffer.