From e9a63b2b3822bbc533130ead0ab8ee03b4a4250a Mon Sep 17 00:00:00 2001 From: Anders Leino Date: Wed, 19 Feb 2025 09:55:16 +0200 Subject: Cleanups for render-api (#6360) * Clean up unused code * Clean up support interface * Rename the compile output requests to mark them DEPRECATED --------- Co-authored-by: Yong He --- tools/render-test/render-test-main.cpp | 43 +++++++++++----------------------- 1 file changed, 14 insertions(+), 29 deletions(-) (limited to 'tools/render-test/render-test-main.cpp') diff --git a/tools/render-test/render-test-main.cpp b/tools/render-test/render-test-main.cpp index a167a4a27..b0d6c44e0 100644 --- a/tools/render-test/render-test-main.cpp +++ b/tools/render-test/render-test-main.cpp @@ -154,28 +154,28 @@ protected: struct AssignValsFromLayoutContext { IDevice* device; - slang::ISession* slangSession; + slang::IComponentType* slangComponent; ShaderOutputPlan& outputPlan; TestResourceContext& resourceContext; - slang::ProgramLayout* slangReflection; IAccelerationStructure* accelerationStructure; AssignValsFromLayoutContext( IDevice* device, - slang::ISession* slangSession, + slang::IComponentType* slangComponent, ShaderOutputPlan& outputPlan, TestResourceContext& resourceContext, - slang::ProgramLayout* slangReflection, IAccelerationStructure* accelerationStructure) : device(device) - , slangSession(slangSession) + , slangComponent(slangComponent) , outputPlan(outputPlan) , resourceContext(resourceContext) - , slangReflection(slangReflection) , accelerationStructure(accelerationStructure) { } + slang::ProgramLayout* slangReflection() { return slangComponent->getLayout(); } + slang::ISession* slangSession() { return slangComponent->getSession(); } + void maybeAddOutput( ShaderCursor const& dstCursor, ShaderInputLayout::Val* srcVal, @@ -389,7 +389,7 @@ struct AssignValsFromLayoutContext // If the input line specified the name of the type // to allocate, then we use it directly. // - slangType = slangReflection->findTypeByName(typeName.getBuffer()); + slangType = slangReflection()->findTypeByName(typeName.getBuffer()); } else { @@ -418,7 +418,7 @@ struct AssignValsFromLayoutContext ComPtr shaderObject; device->createShaderObject( - slangSession, + slangSession(), slangType, ShaderObjectContainerType::None, shaderObject.writeRef()); @@ -437,7 +437,7 @@ struct AssignValsFromLayoutContext List args; for (auto& typeName : srcVal->typeArgs) { - auto slangType = slangReflection->findTypeByName(typeName.getBuffer()); + auto slangType = slangReflection()->findTypeByName(typeName.getBuffer()); if (!slangType) { StdWriters::getError().print( @@ -516,42 +516,30 @@ struct AssignValsFromLayoutContext } }; -SlangResult _assignVarsFromLayout( +static SlangResult _assignVarsFromLayout( IDevice* device, - slang::ISession* slangSession, + slang::IComponentType* slangComponent, IShaderObject* shaderObject, ShaderInputLayout const& layout, ShaderOutputPlan& ioOutputPlan, TestResourceContext& ioResourceContext, - slang::ProgramLayout* slangReflection, IAccelerationStructure* accelerationStructure) { - AssignValsFromLayoutContext context( - device, - slangSession, - ioOutputPlan, - ioResourceContext, - slangReflection, - accelerationStructure); + AssignValsFromLayoutContext + context(device, slangComponent, ioOutputPlan, ioResourceContext, accelerationStructure); ShaderCursor rootCursor = ShaderCursor(shaderObject); return context.assign(rootCursor, layout.rootVal); } Result RenderTestApp::applyBinding(IShaderObject* rootObject) { - auto slangReflection = (slang::ProgramLayout*)spGetReflection( - m_compilationOutput.output.getRequestForReflection()); - ComPtr slangSession; - m_compilationOutput.output.m_requestForKernels->getSession(slangSession.writeRef()); - return _assignVarsFromLayout( m_device, - slangSession, + m_compilationOutput.output.slangProgram, rootObject, m_compilationOutput.layout, m_outputPlan, m_resourceContext, - slangReflection, m_topLevelAccelerationStructure); } @@ -1086,9 +1074,6 @@ Result RenderTestApp::update() m_options.shaderType == Options::ShaderProgramType::GraphicsMeshCompute || m_options.shaderType == Options::ShaderProgramType::GraphicsTaskMeshCompute) { - auto request = m_compilationOutput.output.getRequestForReflection(); - auto slangReflection = (slang::ShaderReflection*)spGetReflection(request); - SLANG_RETURN_ON_FAIL(writeBindingOutput(m_options.outputPath)); } else -- cgit v1.2.3