Lines Matching refs:decl

133 ShaderProgram::ShaderProgram (const pdec::ShaderProgramDeclaration& decl)
134 : rr::VertexShader (decl.getVertexInputCount(), decl.getVertexOutputCount())
135 , rr::GeometryShader (decl.getGeometryInputCount(),
136 decl.getGeometryOutputCount(),
137 decl.m_geometryDecl.inputType,
138 decl.m_geometryDecl.outputType,
139 decl.m_geometryDecl.numOutputVertices,
140 decl.m_geometryDecl.numInvocations)
141 , rr::FragmentShader (decl.getFragmentInputCount(), decl.getFragmentOutputCount())
142 , m_attributeNames (decl.getVertexInputCount())
143 , m_uniforms (decl.m_uniforms.size())
144 , m_vertSrc (decl.m_vertexSource)
145 , m_fragSrc (decl.m_fragmentSource)
146 , m_geomSrc (decl.hasGeometryShader() ? (decl.m_geometrySource) : (""))
147 , m_hasGeometryShader (decl.hasGeometryShader())
149 DE_ASSERT(decl.valid());
153 for (size_t ndx = 0; ndx < decl.m_vertexAttributes.size(); ++ndx)
155 this->rr::VertexShader::m_inputs[ndx].type = decl.m_vertexAttributes[ndx].type;
156 m_attributeNames[ndx] = decl.m_vertexAttributes[ndx].name;
161 for (size_t ndx = 0; ndx < decl.m_vertexToGeometryVaryings.size(); ++ndx)
163 this->rr::VertexShader::m_outputs[ndx].type = decl.m_vertexToGeometryVaryings[ndx].type;
164 this->rr::VertexShader::m_outputs[ndx].flatshade = decl.m_vertexToGeometryVaryings[ndx].flatshade;
168 for (size_t ndx = 0; ndx < decl.m_geometryToFragmentVaryings.size(); ++ndx)
170 this->rr::GeometryShader::m_outputs[ndx].type = decl.m_geometryToFragmentVaryings[ndx].type;
171 this->rr::GeometryShader::m_outputs[ndx].flatshade = decl.m_geometryToFragmentVaryings[ndx].flatshade;
178 for (size_t ndx = 0; ndx < decl.m_vertexToFragmentVaryings.size(); ++ndx)
180 this->rr::VertexShader::m_outputs[ndx].type = decl.m_vertexToFragmentVaryings[ndx].type;
181 this->rr::VertexShader::m_outputs[ndx].flatshade = decl.m_vertexToFragmentVaryings[ndx].flatshade;
187 for (size_t ndx = 0; ndx < decl.m_fragmentOutputs.size(); ++ndx)
188 this->rr::FragmentShader::m_outputs[ndx].type = decl.m_fragmentOutputs[ndx].type;
192 for (size_t ndx = 0; ndx < decl.m_uniforms.size(); ++ndx)
194 this->m_uniforms[ndx].name = decl.m_uniforms[ndx].name;
195 this->m_uniforms[ndx].type = decl.m_uniforms[ndx].type;