Lines Matching refs:shaderSpec
94 static std::string generateVertexShader (const ShaderSpec& shaderSpec) in generateVertexShader() argument
96 const bool usesInout = glu::glslVersionUsesInOutQualifiers(shaderSpec.version); in generateVertexShader()
101 src << glu::getGLSLVersionDeclaration(shaderSpec.version) << "\n"; in generateVertexShader()
103 if (!shaderSpec.globalDeclarations.empty()) in generateVertexShader()
104 src << shaderSpec.globalDeclarations << "\n"; in generateVertexShader()
106 …for (vector<Symbol>::const_iterator input = shaderSpec.inputs.begin(); input != shaderSpec.inputs.… in generateVertexShader()
109 …for (vector<Symbol>::const_iterator output = shaderSpec.outputs.begin(); output != shaderSpec.outp… in generateVertexShader()
132 …for (vector<Symbol>::const_iterator output = shaderSpec.outputs.begin(); output != shaderSpec.outp… in generateVertexShader()
140 std::istringstream opSrc (shaderSpec.source); in generateVertexShader()
148 …for (vector<Symbol>::const_iterator output = shaderSpec.outputs.begin(); output != shaderSpec.outp… in generateVertexShader()
164 static std::string generateGeometryShader (const ShaderSpec& shaderSpec) in generateGeometryShader() argument
166 DE_ASSERT(glu::glslVersionUsesInOutQualifiers(shaderSpec.version)); in generateGeometryShader()
170 src << glu::getGLSLVersionDeclaration(shaderSpec.version) << "\n"; in generateGeometryShader()
172 if (glu::glslVersionIsES(shaderSpec.version) && shaderSpec.version <= glu::GLSL_VERSION_310_ES) in generateGeometryShader()
175 if (!shaderSpec.globalDeclarations.empty()) in generateGeometryShader()
176 src << shaderSpec.globalDeclarations << "\n"; in generateGeometryShader()
181 …for (vector<Symbol>::const_iterator input = shaderSpec.inputs.begin(); input != shaderSpec.inputs.… in generateGeometryShader()
184 …for (vector<Symbol>::const_iterator output = shaderSpec.outputs.begin(); output != shaderSpec.outp… in generateGeometryShader()
206 …for (vector<Symbol>::const_iterator input = shaderSpec.inputs.begin(); input != shaderSpec.inputs.… in generateGeometryShader()
210 …for (vector<Symbol>::const_iterator output = shaderSpec.outputs.begin(); output != shaderSpec.outp… in generateGeometryShader()
220 std::istringstream opSrc (shaderSpec.source); in generateGeometryShader()
228 …for (vector<Symbol>::const_iterator output = shaderSpec.outputs.begin(); output != shaderSpec.outp… in generateGeometryShader()
263 static std::string generatePassthroughVertexShader (const ShaderSpec& shaderSpec, const char* input… in generatePassthroughVertexShader() argument
266 DE_ASSERT(glu::glslVersionUsesInOutQualifiers(shaderSpec.version)); in generatePassthroughVertexShader()
270 src << glu::getGLSLVersionDeclaration(shaderSpec.version) << "\n" in generatePassthroughVertexShader()
273 …for (vector<Symbol>::const_iterator input = shaderSpec.inputs.begin(); input != shaderSpec.inputs.… in generatePassthroughVertexShader()
283 …for (vector<Symbol>::const_iterator input = shaderSpec.inputs.begin(); input != shaderSpec.inputs.… in generatePassthroughVertexShader()
291 static std::string generateFragmentShader (const ShaderSpec& shaderSpec, bool useIntOutputs, const … in generateFragmentShader() argument
293 DE_ASSERT(glu::glslVersionUsesInOutQualifiers(shaderSpec.version)); in generateFragmentShader()
296 src << glu::getGLSLVersionDeclaration(shaderSpec.version) << "\n"; in generateFragmentShader()
298 if (!shaderSpec.globalDeclarations.empty()) in generateFragmentShader()
299 src << shaderSpec.globalDeclarations << "\n"; in generateFragmentShader()
301 …for (vector<Symbol>::const_iterator input = shaderSpec.inputs.begin(); input != shaderSpec.inputs.… in generateFragmentShader()
304 for (int outNdx = 0; outNdx < (int)shaderSpec.outputs.size(); ++outNdx) in generateFragmentShader()
306 const Symbol& output = shaderSpec.outputs[outNdx]; in generateFragmentShader()
352 …for (vector<Symbol>::const_iterator output = shaderSpec.outputs.begin(); output != shaderSpec.outp… in generateFragmentShader()
362 std::istringstream opSrc (shaderSpec.source); in generateFragmentShader()
369 …for (vector<Symbol>::const_iterator output = shaderSpec.outputs.begin(); output != shaderSpec.outp… in generateFragmentShader()
399 ShaderExecutor::ShaderExecutor (const glu::RenderContext& renderCtx, const ShaderSpec& shaderSpec) in ShaderExecutor() argument
401 , m_inputs (shaderSpec.inputs) in ShaderExecutor()
402 , m_outputs (shaderSpec.outputs) in ShaderExecutor()
421 …VertexProcessorExecutor (const glu::RenderContext& renderCtx, const ShaderSpec& shaderSpec, const …
461 …cessorExecutor (const glu::RenderContext& renderCtx, const ShaderSpec& shaderSpec, const glu::Prog… in VertexProcessorExecutor() argument
462 : ShaderExecutor (renderCtx, shaderSpec) in VertexProcessorExecutor()
464 …glu::ProgramSources(sources) << getTFVaryings(shaderSpec.outputs.begin(), shaderSpec.outputs.end()) in VertexProcessorExecutor()
570 VertexShaderExecutor (const glu::RenderContext& renderCtx, const ShaderSpec& shaderSpec);
573 …rExecutor::VertexShaderExecutor (const glu::RenderContext& renderCtx, const ShaderSpec& shaderSpec) in VertexShaderExecutor() argument
574 : VertexProcessorExecutor (renderCtx, shaderSpec, in VertexShaderExecutor()
575 glu::ProgramSources() << glu::VertexSource(generateVertexShader(shaderSpec)) in VertexShaderExecutor()
576 << glu::FragmentSource(generateEmptyFragmentSource(shaderSpec.version))) in VertexShaderExecutor()
595 GeometryShaderExecutor (const glu::RenderContext& renderCtx, const ShaderSpec& shaderSpec);
598 …xecutor::GeometryShaderExecutor (const glu::RenderContext& renderCtx, const ShaderSpec& shaderSpec) in GeometryShaderExecutor() argument
600 , VertexProcessorExecutor (renderCtx, shaderSpec, in GeometryShaderExecutor()
601 …glu::ProgramSources() << glu::VertexSource(generatePassthroughVertexShader(shaderSpec, "", "geom_"… in GeometryShaderExecutor()
602 << glu::GeometrySource(generateGeometryShader(shaderSpec)) in GeometryShaderExecutor()
603 << glu::FragmentSource(generateEmptyFragmentSource(shaderSpec.version))) in GeometryShaderExecutor()
612 FragmentShaderExecutor (const glu::RenderContext& renderCtx, const ShaderSpec& shaderSpec);
655 …xecutor::FragmentShaderExecutor (const glu::RenderContext& renderCtx, const ShaderSpec& shaderSpec) in FragmentShaderExecutor() argument
656 : ShaderExecutor (renderCtx, shaderSpec) in FragmentShaderExecutor()
660 … glu::ProgramSources() << glu::VertexSource(generatePassthroughVertexShader(shaderSpec, "a_", "")) in FragmentShaderExecutor()
661 …<< glu::FragmentSource(generateFragmentShader(shaderSpec, !hasFloatRenderTargets(renderCtx), m_out… in FragmentShaderExecutor()
857 …BufferIoExecutor (const glu::RenderContext& renderCtx, const ShaderSpec& shaderSpec, const glu::Pr…
911 …fferIoExecutor (const glu::RenderContext& renderCtx, const ShaderSpec& shaderSpec, const glu::Prog… in BufferIoExecutor() argument
912 : ShaderExecutor (renderCtx, shaderSpec) in BufferIoExecutor()
1199 ComputeShaderExecutor (const glu::RenderContext& renderCtx, const ShaderSpec& shaderSpec);
1236 …Executor::ComputeShaderExecutor (const glu::RenderContext& renderCtx, const ShaderSpec& shaderSpec) in ComputeShaderExecutor() argument
1237 : BufferIoExecutor (renderCtx, shaderSpec, in ComputeShaderExecutor()
1238 glu::ProgramSources() << glu::ComputeSource(generateComputeShader(shaderSpec))) in ComputeShaderExecutor()
1328 TessControlExecutor (const glu::RenderContext& renderCtx, const ShaderSpec& shaderSpec);
1334 static std::string generateTessControlShader (const ShaderSpec& shaderSpec);
1337 std::string TessControlExecutor::generateTessControlShader (const ShaderSpec& shaderSpec) in generateTessControlShader() argument
1341 src << glu::getGLSLVersionDeclaration(shaderSpec.version) << "\n"; in generateTessControlShader()
1343 if (shaderSpec.version == glu::GLSL_VERSION_310_ES) in generateTessControlShader()
1346 if (!shaderSpec.globalDeclarations.empty()) in generateTessControlShader()
1347 src << shaderSpec.globalDeclarations << "\n"; in generateTessControlShader()
1351 declareBufferBlocks(src, shaderSpec); in generateTessControlShader()
1364 generateExecBufferIo(src, shaderSpec, "invocationId"); in generateTessControlShader()
1389 …olExecutor::TessControlExecutor (const glu::RenderContext& renderCtx, const ShaderSpec& shaderSpec) in TessControlExecutor() argument
1391 , BufferIoExecutor (renderCtx, shaderSpec, glu::ProgramSources() in TessControlExecutor()
1392 << glu::VertexSource(generateVertexShaderForTess(shaderSpec.version)) in TessControlExecutor()
1393 << glu::TessellationControlSource(generateTessControlShader(shaderSpec)) in TessControlExecutor()
1394 << glu::TessellationEvaluationSource(generateEmptyTessEvalShader(shaderSpec.version)) in TessControlExecutor()
1395 << glu::FragmentSource(generateEmptyFragmentSource(shaderSpec.version))) in TessControlExecutor()
1430 TessEvaluationExecutor (const glu::RenderContext& renderCtx, const ShaderSpec& shaderSpec);
1436 static std::string generateTessEvalShader (const ShaderSpec& shaderSpec);
1463 std::string TessEvaluationExecutor::generateTessEvalShader (const ShaderSpec& shaderSpec) in generateTessEvalShader() argument
1467 src << glu::getGLSLVersionDeclaration(shaderSpec.version) << "\n"; in generateTessEvalShader()
1469 if (shaderSpec.version == glu::GLSL_VERSION_310_ES) in generateTessEvalShader()
1472 if (!shaderSpec.globalDeclarations.empty()) in generateTessEvalShader()
1473 src << shaderSpec.globalDeclarations << "\n"; in generateTessEvalShader()
1479 declareBufferBlocks(src, shaderSpec); in generateTessEvalShader()
1485 generateExecBufferIo(src, shaderSpec, "invocationId"); in generateTessEvalShader()
1492 …xecutor::TessEvaluationExecutor (const glu::RenderContext& renderCtx, const ShaderSpec& shaderSpec) in TessEvaluationExecutor() argument
1494 , BufferIoExecutor (renderCtx, shaderSpec, glu::ProgramSources() in TessEvaluationExecutor()
1495 << glu::VertexSource(generateVertexShaderForTess(shaderSpec.version)) in TessEvaluationExecutor()
1496 << glu::TessellationControlSource(generatePassthroughTessControlShader(shaderSpec.version)) in TessEvaluationExecutor()
1497 << glu::TessellationEvaluationSource(generateTessEvalShader(shaderSpec)) in TessEvaluationExecutor()
1498 << glu::FragmentSource(generateEmptyFragmentSource(shaderSpec.version))) in TessEvaluationExecutor()
1534 …tor (const glu::RenderContext& renderCtx, glu::ShaderType shaderType, const ShaderSpec& shaderSpec) in createExecutor() argument
1538 case glu::SHADERTYPE_VERTEX: return new VertexShaderExecutor (renderCtx, shaderSpec); in createExecutor()
1539 …ase glu::SHADERTYPE_TESSELLATION_CONTROL: return new TessControlExecutor (renderCtx, shaderSpec); in createExecutor()
1540 …glu::SHADERTYPE_TESSELLATION_EVALUATION: return new TessEvaluationExecutor (renderCtx, shaderSpec); in createExecutor()
1541 case glu::SHADERTYPE_GEOMETRY: return new GeometryShaderExecutor (renderCtx, shaderSpec); in createExecutor()
1542 case glu::SHADERTYPE_FRAGMENT: return new FragmentShaderExecutor (renderCtx, shaderSpec); in createExecutor()
1543 case glu::SHADERTYPE_COMPUTE: return new ComputeShaderExecutor (renderCtx, shaderSpec); in createExecutor()