Lines Matching defs:variables
778 /** Returns te number of components that variables defined with user-specified type
3783 /* In variables */
3786 /* Out variables */
6049 } /* for (all pointers to double variables) */
6878 /* For clarity, copy the retrieved values to separate variables */
7179 " floating-point variables work correctly")
7608 /* Declare output variables. Note that boolean output variables are not supported, so we need
7619 /* Declare input variables. Handle the bool case exclusively. */
8181 : TestCase(context, "illegal_conversions", "Verifies that invalid casts to double-precision variables are detected "
8637 /* Add local variables */
8855 * @param variables
8859 bool GPUShaderFP64Test7::buildTestProgram(_variables& variables)
8861 std::string fs_body = getFragmentShaderBody(variables);
8863 std::string gs_body = getGeometryShaderBody(variables);
8864 std::string tc_body = getTessellationControlShaderBody(variables);
8865 std::string te_body = getTessellationEvaluationShaderBody(variables);
8866 std::string vs_body = getVertexShaderBody(variables);
8912 generateXFBVaryingNames(variables);
8935 const size_t n_variables = variables.size();
8939 _variable& current_variable = variables[n_variable];
8960 } /* for (all test variables) */
9001 * @param variables Holds descriptor for all variables used for the iteration the
9003 * to the number of the variables and their type.
9005 void GPUShaderFP64Test7::configureXFBBuffer(const _variables& variables)
9011 * Let's initialize the storage, according to the list of variables that will be used
9016 for (_variables_const_iterator variables_iterator = variables.begin(); variables_iterator != variables.end();
9024 } /* for (all variables) */
9127 * @param variables Vector of variable descriptors defining properties of
9128 * variables that should be used for the iteration.
9132 bool GPUShaderFP64Test7::executeFunctionalTest(_variables& variables)
9137 if (!buildTestProgram(variables))
9145 setInputAttributeValues(variables);
9151 configureXFBBuffer(variables);
9205 const size_t n_variables = variables.size();
9210 << Utils::getVariableTypeString(variables[n_variable].type)
9211 << " (array size:" << variables[n_variable].array_size << ")"
9216 logVariableContents(variables);
9247 /** Takes user-input vector of test variables and allocates & fills an array of strings
9251 * @param variables Holds all test variable descriptors to be used for the iteration.
9253 void GPUShaderFP64Test7::generateXFBVaryingNames(const _variables& variables)
9264 for (_variables_const_iterator variables_iterator = variables.begin(); variables_iterator != variables.end();
9274 for (_variables_const_iterator variables_iterator = variables.begin(); variables_iterator != variables.end();
9394 /** Retrieves body of a fragment shader that uses user-specified set of variables
9397 * @param variables As per description.
9401 std::string GPUShaderFP64Test7::getFragmentShaderBody(const _variables& variables)
9412 << getVariableDeclarations("gs", variables, "flat") << "};\n"
9429 const size_t n_variables = variables.size();
9433 unsigned int variable_array_size = variables[n_variable].array_size;
9434 Utils::_variable_type variable_type = variables[n_variable].type;
9492 * input variables carry correct information.
9498 unsigned int variable_array_size = variables[n_variable].array_size;
9499 Utils::_variable_type variable_type = variables[n_variable].type;
9571 /** Retrieves body of a geometry shader that uses user-specified set of variables
9574 * @param variables As per description.
9578 std::string GPUShaderFP64Test7::getGeometryShaderBody(const _variables& variables)
9592 << getVariableDeclarations("te", variables) << "} in_data[];\n"
9598 << getVariableDeclarations("gs", variables, "flat") << "};\n"
9605 /* Take input variables, add a predefined value and forward them to output variables */
9610 const size_t n_variables = variables.size();
9619 unsigned int variable_array_size = variables[n_variable].array_size;
9620 Utils::_variable_type variable_type = variables[n_variable].type;
9663 /** Retrieves body of a tessellation control shader that uses user-specified set of variables
9666 * @param variables As per description.
9670 std::string GPUShaderFP64Test7::getTessellationControlShaderBody(const _variables& variables)
9682 << getVariableDeclarations("vs", variables) << "} in_data[];\n"
9687 << getVariableDeclarations("tc", variables) << "} out_data[];\n"
9701 /* Take input variables, add a predefined value and forward them to output variables */
9702 const size_t n_variables = variables.size();
9707 unsigned int variable_array_size = variables[n_variable].array_size;
9708 Utils::_variable_type variable_type = variables[n_variable].type;
9745 /** Retrieves body of a tessellation evaluation shader that uses user-specified set of variables
9748 * @param variables As per description.
9752 std::string GPUShaderFP64Test7::getTessellationEvaluationShaderBody(const _variables& variables)
9765 << getVariableDeclarations("tc", variables) << "} in_data[];\n"
9771 << getVariableDeclarations("te", variables) << "};\n"
9778 /* Take input variables, add a predefined value and forward them to output variables */
9779 const size_t n_variables = variables.size();
9784 unsigned int variable_array_size = variables[n_variable].array_size;
9785 Utils::_variable_type variable_type = variables[n_variable].type;
9821 /** Returns a string containing declarations of user-specified set of variables.
9825 * @param variables List of variables to declare in the result string.
9833 std::string GPUShaderFP64Test7::getVariableDeclarations(const char* prefix, const _variables& variables,
9838 /* Define output variables */
9839 const size_t n_variables = variables.size();
9843 unsigned int variable_array_size = variables[n_variable].array_size;
9844 Utils::_variable_type variable_type = variables[n_variable].type;
9860 /** Retrieves body of a vertex shader that uses user-specified set of variables
9863 * @param variables As per description.
9867 std::string GPUShaderFP64Test7::getVertexShaderBody(const _variables& variables)
9875 /* Define input variables if GL_ARB_vertex_attrib_64bit is supported */
9879 << getVariableDeclarations("in_vs", variables, "in");
9882 /* Define output variables */
9885 << getVariableDeclarations("vs", variables);
9895 const size_t n_variables = variables.size();
9899 unsigned int variable_array_size = variables[n_variable].array_size;
9900 Utils::_variable_type variable_type = variables[n_variable].type;
9930 if (Utils::isMatrixVariableType(variables[n_variable].type))
9972 /* Are double-precision input variables supported? */
10135 << "A fragment shader with double-precision input variables lacking flat layout qualifier"
10153 /* Use as many variables as possible for the iterations. Do not exceed maximum amount
10210 /** Logs contents of test variables, as XFBed out by already executed test iteration. */
10211 void GPUShaderFP64Test7::logVariableContents(const _variables& variables)
10228 for (_variables_const_iterator variables_iterator = variables.begin(); variables_iterator != variables.end();
10260 } /* for (all variables) */
10287 * Takes a list of test variables used for current iteration and assigns increasing values
10290 * @param variables Test variables of the current iteration.
10292 void GPUShaderFP64Test7::setInputAttributeValues(const _variables& variables)
10296 for (_variables_const_iterator variable_iterator = variables.begin(); variable_iterator != variables.end();
10367 } /* for (all variables) */
11418 /* Add output variables */
11627 result_variable_size + sizeof(int) * 2 /* ivec2s */ * 4); /* result_ output variables */
12810 * shader should define input variables that should be used as
13272 /** Binary function class. It treats input arguments as two variables.
13395 /** Tenary function class. It treats input arguments as three variables.