From ce6e946f6f4882aba8a62392ae791c948633e2e3 Mon Sep 17 00:00:00 2001 From: lucy96chen <47800040+lucy96chen@users.noreply.github.com> Date: Mon, 25 Jul 2022 13:36:43 -0700 Subject: Split render-cuda.cpp into smaller files (#2334) * render-cuda split, compile errors galore due to missing includes etc. * render-cuda split and fully compiles * Ran premake.bat to disable cuda; Added all new files * Removed render-cuda files * CI fixes * Rerun CI --- tools/gfx/cuda/cuda-command-buffer.cpp | 62 ++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 tools/gfx/cuda/cuda-command-buffer.cpp (limited to 'tools/gfx/cuda/cuda-command-buffer.cpp') diff --git a/tools/gfx/cuda/cuda-command-buffer.cpp b/tools/gfx/cuda/cuda-command-buffer.cpp new file mode 100644 index 000000000..efb2486f4 --- /dev/null +++ b/tools/gfx/cuda/cuda-command-buffer.cpp @@ -0,0 +1,62 @@ +// cuda-command-buffer.cpp +#include "cuda-command-buffer.h" + +namespace gfx +{ +#ifdef GFX_ENABLE_CUDA +using namespace Slang; + +namespace cuda +{ + +ICommandBuffer* CommandBufferImpl::getInterface(const Guid& guid) +{ + if (guid == GfxGUID::IID_ISlangUnknown || guid == GfxGUID::IID_ICommandBuffer) + return static_cast(this); + return nullptr; +} + +void CommandBufferImpl::init(DeviceImpl* device, TransientResourceHeapBase* transientHeap) +{ + m_device = device; + m_transientHeap = transientHeap; +} + +SLANG_NO_THROW void SLANG_MCALL CommandBufferImpl::encodeRenderCommands( + IRenderPassLayout* renderPass, + IFramebuffer* framebuffer, + IRenderCommandEncoder** outEncoder) +{ + SLANG_UNUSED(renderPass); + SLANG_UNUSED(framebuffer); + *outEncoder = nullptr; +} + +SLANG_NO_THROW void SLANG_MCALL + CommandBufferImpl::encodeResourceCommands(IResourceCommandEncoder** outEncoder) +{ + m_resourceCommandEncoder.init(this); + *outEncoder = &m_resourceCommandEncoder; +} + +SLANG_NO_THROW void SLANG_MCALL + CommandBufferImpl::encodeComputeCommands(IComputeCommandEncoder** outEncoder) +{ + m_computeCommandEncoder.init(this); + *outEncoder = &m_computeCommandEncoder; +} + +SLANG_NO_THROW void SLANG_MCALL + CommandBufferImpl::encodeRayTracingCommands(IRayTracingCommandEncoder** outEncoder) +{ + *outEncoder = nullptr; +} + +SLANG_NO_THROW Result SLANG_MCALL CommandBufferImpl::getNativeHandle(InteropHandle* outHandle) +{ + return SLANG_FAIL; +} + +} // namespace cuda +#endif +} // namespace gfx -- cgit v1.2.3