Lines Matching refs:type
33 GLenum GLVariableType(const TType &type)
35 if (type.getBasicType() == EbtFloat)
37 if (type.isScalar())
41 else if (type.isVector())
43 switch (type.getNominalSize())
51 else if (type.isMatrix())
53 switch (type.getCols())
56 switch (type.getRows())
65 switch (type.getRows())
74 switch (type.getRows())
87 else if (type.getBasicType() == EbtInt)
89 if (type.isScalar())
93 else if (type.isVector())
95 switch (type.getNominalSize())
105 else if (type.getBasicType() == EbtUInt)
107 if (type.isScalar())
111 else if (type.isVector())
113 switch (type.getNominalSize())
123 else if (type.getBasicType() == EbtBool)
125 if (type.isScalar())
129 else if (type.isVector())
131 switch (type.getNominalSize())
142 switch (type.getBasicType())
167 GLenum GLVariablePrecision(const TType &type)
169 if (type.getBasicType() == EbtFloat)
171 switch (type.getPrecision())
185 else if (type.getBasicType() == EbtInt || type.getBasicType() == EbtUInt)
187 switch (type.getPrecision())
206 TString ArrayString(const TType &type)
208 if (!type.isArray())
213 return "[" + str(type.getArraySize()) + "]";
285 void GetVariableTraverser::traverse(const TType &type, const TString &name, std::vector<VarT> *output)
287 const TStructure *structure = type.getStruct();
291 variable.arraySize = static_cast<unsigned int>(type.getArraySize());
295 variable.type = GLVariableType(type);
296 variable.precision = GLVariablePrecision(type);
301 variable.type = GL_STRUCT_ANGLEX;
309 traverse(*field->type(), field->name(), &variable.fields);