void GrGLVertexShaderBuilder::emitAttributes(const GrGeometryProcessor& gp) { const GrGeometryProcessor::VertexAttribArray& vars = gp.getVertexAttribs(); int numAttributes = vars.count(); for (int a = 0; a < numAttributes; ++a) { this->addAttribute(vars[a]); } }
static uint32_t gen_attrib_key(const GrGeometryProcessor& proc) { uint32_t key = 0; const GrGeometryProcessor::VertexAttribArray& vars = proc.getVertexAttribs(); int numAttributes = vars.count(); SkASSERT(numAttributes <= 2); for (int a = 0; a < numAttributes; ++a) { uint32_t value = 1 << a; key |= value; } return key; }