Lines Matching defs:spec
154 string genVertexShader (const ShaderCaseSpecification& spec)
160 res << glu::getGLSLVersionDeclaration(spec.targetVersion) << "\n";
169 for (size_t ndx = 0; ndx < spec.values.inputs.size(); ndx++)
171 const Value& val = spec.values.inputs[ndx];
191 for (size_t ndx = 0; ndx < spec.values.inputs.size(); ndx++)
193 const Value& val = spec.values.inputs[ndx];
238 string genFragmentShader (const ShaderCaseSpecification& spec)
244 shader << glu::getGLSLVersionDeclaration(spec.targetVersion) << "\n";
253 genCompareFunctions(shader, spec.values, false);
257 for (size_t ndx = 0; ndx < spec.values.outputs.size(); ndx++)
259 const Value& val = spec.values.outputs[ndx];
274 declareReferenceBlock(shader, spec.values);
283 genCompareOp(shader, "dEQP_FragColor", spec.values, DE_NULL);
290 string specializeVertexShader (const ShaderCaseSpecification& spec, const string& src)
299 DE_ASSERT(spec.caseType == glu::sl::CASETYPE_VERTEX_ONLY);
308 for (size_t ndx = 0; ndx < spec.values.inputs.size(); ndx++)
310 const Value& val = spec.values.inputs[ndx];
330 declareUniforms(decl, spec.values);
332 for (size_t ndx = 0; ndx < spec.values.outputs.size(); ndx++)
334 const Value& val = spec.values.outputs[ndx];
365 const string withExt = injectExtensionRequirements(baseSrc, spec.programs[0].requiredExtensions, glu::SHADERTYPE_VERTEX);
371 string specializeFragmentShader (const ShaderCaseSpecification& spec, const string& src)
379 DE_ASSERT(spec.caseType == glu::sl::CASETYPE_FRAGMENT_ONLY);
381 genCompareFunctions(decl, spec.values, false);
382 genCompareOp(output, "dEQP_FragColor", spec.values, DE_NULL);
386 for (size_t ndx = 0; ndx < spec.values.inputs.size(); ndx++)
388 const Value& val = spec.values.inputs[ndx];
408 declareUniforms(decl, spec.values);
409 declareReferenceBlock(decl, spec.values);
411 for (size_t ndx = 0; ndx < spec.values.outputs.size(); ndx++)
413 const Value& val = spec.values.outputs[ndx];
429 const string withExt = injectExtensionRequirements(baseSrc, spec.programs[0].requiredExtensions, glu::SHADERTYPE_FRAGMENT);
702 deUint32 getShaderStages (const ShaderCaseSpecification& spec)
704 if (spec.caseType == glu::sl::CASETYPE_COMPLETE)
708 for (size_t progNdx = 0; progNdx < spec.programs.size(); progNdx++)
712 if (!spec.programs[progNdx].sources.sources[shaderType].empty())
726 PipelineProgram (Context& context, const ShaderCaseSpecification& spec);
738 PipelineProgram::PipelineProgram (Context& context, const ShaderCaseSpecification& spec)
739 : m_stages(getShaderStages(spec))
742 TCU_CHECK_INTERNAL(spec.programs.size() == 1);
1224 ShaderCaseInstance (Context& context, const ShaderCaseSpecification& spec);
1286 ShaderCaseInstance::ShaderCaseInstance (Context& context, const ShaderCaseSpecification& spec)
1288 , m_spec (spec)
1293 , m_inputLayout (computeStd430Layout(spec.values.inputs))
1297 , m_referenceLayout (computeStd140Layout(spec.values.outputs))
1301 , m_uniformLayout (computeStd140Layout(spec.values.uniforms))
1305 , m_rtFormat (getRenderTargetFormat(spec.outputFormat))
1316 , m_program (context, spec)
1319 , m_pipeline (createPipeline(context, spec.values.inputs, m_inputLayout, m_program, *m_renderPass, *m_pipelineLayout, tcu::UVec2(RENDER_WIDTH, RENDER_HEIGHT), m_outputCount))
1675 ShaderCase (tcu::TestContext& testCtx, const string& name, const ShaderCaseSpecification& spec);
1685 ShaderCase::ShaderCase (tcu::TestContext& testCtx, const string& name, const ShaderCaseSpecification& spec)
1687 , m_spec (spec)
1758 tcu::TestCase* createCase (const string& name, const std::string& description, const ShaderCaseSpecification& spec)
1761 return new ShaderCase(m_testCtx, name, spec);