24 #ifndef PXR_IMAGING_HGIINTEROP_HGIINTEROP_H
25 #define PXR_IMAGING_HGIINTEROP_HGIINTEROP_H
30 #include "pxr/imaging/hgiInterop/api.h"
31 #include "pxr/imaging/hgi/texture.h"
35 PXR_NAMESPACE_OPEN_SCOPE
38 class HgiInteropMetal;
39 class HgiInteropOpenGL;
40 class HgiInteropVulkan;
93 HgiTextureHandle
const &srcColor,
94 HgiTextureHandle
const &srcDepth,
100 HgiInterop & operator=(
const HgiInterop&) =
delete;
101 HgiInterop(
const HgiInterop&) =
delete;
103 #if defined(PXR_METAL_SUPPORT_ENABLED)
104 std::unique_ptr<HgiInteropMetal> _metalToOpenGL;
105 #elif defined(PXR_VULKAN_SUPPORT_ENABLED)
106 std::unique_ptr<HgiInteropVulkan> _vulkanToOpenGL;
108 std::unique_ptr<HgiInteropOpenGL> _openGLToOpenGL;
113 PXR_NAMESPACE_CLOSE_SCOPE
Basic type for a vector of 4 int components.
HGIINTEROP_API void TransferToApp(Hgi *srcHgi, HgiTextureHandle const &srcColor, HgiTextureHandle const &srcDepth, TfToken const &dstApi, VtValue const &dstFramebuffer, GfVec4i const &dstRegion)
Composite the provided textures over the application / viewer's framebuffer contents.
Token for efficient comparison, assignment, and hashing of known strings.
Hydra Graphics Interface.
Hydra Graphics Interface Interop.
Provides a container which may hold any type, and provides introspection and iteration over array typ...
TfToken class for efficient string referencing and hashing, plus conversions to and from stl string c...