Lines Matching defs:n_id
6636 for (unsigned int n_id = 0; n_id < 2 /* po id variants */; ++n_id)
6638 if (m_fs_po_ids[n_id] != 0)
6640 gl.deleteProgram(m_fs_po_ids[n_id]);
6642 m_fs_po_ids[n_id] = 0;
6645 if (m_gs_po_ids[n_id] != 0)
6647 gl.deleteProgram(m_gs_po_ids[n_id]);
6649 m_gs_po_ids[n_id] = 0;
6652 if (m_tc_po_ids[n_id] != 0)
6654 gl.deleteProgram(m_tc_po_ids[n_id]);
6656 m_tc_po_ids[n_id] = 0;
6659 if (m_te_po_ids[n_id] != 0)
6661 gl.deleteProgram(m_te_po_ids[n_id]);
6663 m_te_po_ids[n_id] = 0;
6666 if (m_vs_po_ids[n_id] != 0)
6668 gl.deleteProgram(m_vs_po_ids[n_id]);
6670 m_vs_po_ids[n_id] = 0;
6699 * @param n_id Index of the shader.
6703 std::string FunctionalTest13::getFragmentShaderBody(unsigned int n_id)
6718 << float(n_id + 1) / 10.0f << ", " << float(n_id + 2) / 10.0f << ", " << float(n_id + 3) / 10.0f
6719 << ", " << float(n_id + 4) / 10.0f
6725 << float(n_id + 1) / 20.0f << ", " << float(n_id + 2) / 20.0f << ", " << float(n_id + 3) / 20.0f
6726 << ", " << float(n_id + 4) / 20.0f << ");\n"
6754 * @param n_id Index of the shader.
6758 std::string FunctionalTest13::getGeometryShaderBody(unsigned int n_id)
6775 << float(n_id + 1) * 0.425f << ");\n"
6780 << float(n_id + 1) * 0.0425f << ");\n"
6831 * @param n_id Index of the shader.
6835 std::string FunctionalTest13::getTessellationControlShaderBody(unsigned int n_id)
6851 << float(n_id + 1) * 0.25f << ", 0, 0);\n"
6856 << float(n_id + 1) * 0.025f
6898 * @param n_id Index of the shader.
6902 std::string FunctionalTest13::getTessellationEvaluationShaderBody(unsigned int n_id)
6918 << float(n_id + 1) * 0.325f << ", 0);\n"
6923 << float(n_id + 1) * 0.0325f << ", 0);\n"
6958 * @param n_id Index of the shader.
6962 std::string FunctionalTest13::getVertexShaderBody(unsigned int n_id)
6978 << float(n_id + 1) * 0.125f << ", 0, 0, 0);\n"
6983 << float(n_id + 1) * 0.0125f << ", 0, 0, 0);\n"
7031 for (unsigned int n_id = 0; n_id < 2 /* variants for each shader type */; ++n_id)
7033 std::string fs_body = getFragmentShaderBody(n_id);
7035 std::string gs_body = getGeometryShaderBody(n_id);
7037 std::string tc_body = getTessellationControlShaderBody(n_id);
7039 std::string te_body = getTessellationEvaluationShaderBody(n_id);
7041 std::string vs_body = getVertexShaderBody(n_id);
7044 m_fs_po_ids[n_id] = gl.createShaderProgramv(GL_FRAGMENT_SHADER, 1 /* count */, &fs_body_raw_ptr);
7047 m_gs_po_ids[n_id] = gl.createShaderProgramv(GL_GEOMETRY_SHADER, 1 /* count */, &gs_body_raw_ptr);
7050 m_tc_po_ids[n_id] = gl.createShaderProgramv(GL_TESS_CONTROL_SHADER, 1 /* count */, &tc_body_raw_ptr);
7053 m_te_po_ids[n_id] = gl.createShaderProgramv(GL_TESS_EVALUATION_SHADER, 1 /* count */, &te_body_raw_ptr);
7056 m_vs_po_ids[n_id] = gl.createShaderProgramv(GL_VERTEX_SHADER, 1 /* count */, &vs_body_raw_ptr);
7061 m_fs_po_ids[n_id], m_gs_po_ids[n_id], m_tc_po_ids[n_id], m_te_po_ids[n_id], m_vs_po_ids[n_id],
7972 for (unsigned int n_id = 0; n_id < 2; ++n_id)
7974 if (m_fs_ids[n_id] != 0)
7976 gl.deleteShader(m_fs_ids[n_id]);
7978 m_fs_ids[n_id] = 0;
7981 if (m_fs_po_ids[n_id] != 0)
7983 gl.deleteProgram(m_fs_po_ids[n_id]);
7985 m_fs_po_ids[n_id] = 0;
7988 if (m_gs_ids[n_id] != 0)
7990 gl.deleteShader(m_gs_ids[n_id]);
7992 m_gs_ids[n_id] = 0;
7995 if (m_gs_po_ids[n_id] != 0)
7997 gl.deleteProgram(m_gs_po_ids[n_id]);
7999 m_gs_po_ids[n_id] = 0;
8002 if (m_pipeline_object_ids[n_id] != 0)
8004 gl.deleteProgramPipelines(1 /* n */, m_pipeline_object_ids + n_id);
8007 if (m_po_ids[n_id] != 0)
8009 gl.deleteProgram(m_po_ids[n_id]);
8011 m_po_ids[n_id] = 0;
8014 if (m_tc_ids[n_id] != 0)
8016 gl.deleteShader(m_tc_ids[n_id]);
8018 m_tc_ids[n_id] = 0;
8021 if (m_tc_po_ids[n_id] != 0)
8023 gl.deleteProgram(m_tc_po_ids[n_id]);
8025 m_tc_po_ids[n_id] = 0;
8028 if (m_te_ids[n_id] != 0)
8030 gl.deleteShader(m_te_ids[n_id]);
8032 m_te_ids[n_id] = 0;
8035 if (m_te_po_ids[n_id] != 0)
8037 gl.deleteProgram(m_te_po_ids[n_id]);
8039 m_te_po_ids[n_id] = 0;
8042 if (m_vs_ids[n_id] != 0)
8044 gl.deleteShader(m_vs_ids[n_id]);
8046 m_vs_ids[n_id] = 0;
8049 if (m_vs_po_ids[n_id] != 0)
8051 gl.deleteProgram(m_vs_po_ids[n_id]);
8053 m_vs_po_ids[n_id] = 0;
8063 * @param n_id Index of the shader (as per description).
8067 std::string FunctionalTest16::getShaderBody(const Utils::_shader_stage& shader_stage, const unsigned int& n_id) const
8119 << (n_id + 1) << ", " << (n_id + 2) << ", " << (n_id + 3) << ", " << (n_id + 4)
8125 << (n_id + 2) << ", " << (n_id + 3) << ", " << (n_id + 4) << ", " << (n_id + 5)
8211 for (unsigned int n_id = 0; n_id < 2 /* test program/shader objects */; ++n_id)
8213 const std::string fs_body = getShaderBody(Utils::SHADER_STAGE_FRAGMENT, n_id);
8214 const std::string gs_body = getShaderBody(Utils::SHADER_STAGE_GEOMETRY, n_id);
8215 const std::string tc_body = getShaderBody(Utils::SHADER_STAGE_TESSELLATION_CONTROL, n_id);
8216 const std::string te_body = getShaderBody(Utils::SHADER_STAGE_TESSELLATION_EVALUATION, n_id);
8217 const std::string vs_body = getShaderBody(Utils::SHADER_STAGE_VERTEX, n_id);
8221 m_vs_ids + n_id, m_tc_ids + n_id, m_te_ids + n_id, m_gs_ids + n_id, m_fs_ids + n_id,
8222 m_po_ids + n_id))
8226 << n_id << "]" << tcu::TestLog::EndMessage;
8241 m_fs_po_ids[n_id] = gl.createShaderProgramv(GL_FRAGMENT_SHADER, 1 /* count */, &fs_body_raw_ptr);
8242 m_gs_po_ids[n_id] = gl.createShaderProgramv(GL_GEOMETRY_SHADER, 1 /* count */, &gs_body_raw_ptr);
8243 m_tc_po_ids[n_id] = gl.createShaderProgramv(GL_TESS_CONTROL_SHADER, 1 /* count */, &tc_body_raw_ptr);
8244 m_te_po_ids[n_id] = gl.createShaderProgramv(GL_TESS_EVALUATION_SHADER, 1 /* count */, &te_body_raw_ptr);
8245 m_vs_po_ids[n_id] = gl.createShaderProgramv(GL_VERTEX_SHADER, 1 /* count */, &vs_body_raw_ptr);
8248 gl.getProgramiv(m_fs_po_ids[n_id], GL_LINK_STATUS, link_status + 0);
8249 gl.getProgramiv(m_gs_po_ids[n_id], GL_LINK_STATUS, link_status + 1);
8250 gl.getProgramiv(m_tc_po_ids[n_id], GL_LINK_STATUS, link_status + 2);
8251 gl.getProgramiv(m_te_po_ids[n_id], GL_LINK_STATUS, link_status + 3);
8252 gl.getProgramiv(m_vs_po_ids[n_id], GL_LINK_STATUS, link_status + 4);
8267 gl.genProgramPipelines(1 /* n */, m_pipeline_object_ids + n_id);
8270 gl.useProgramStages(m_pipeline_object_ids[n_id], GL_FRAGMENT_SHADER_BIT, m_fs_po_ids[n_id]);
8271 gl.useProgramStages(m_pipeline_object_ids[n_id], GL_GEOMETRY_SHADER_BIT, m_gs_po_ids[n_id]);
8272 gl.useProgramStages(m_pipeline_object_ids[n_id], GL_TESS_CONTROL_SHADER_BIT, m_tc_po_ids[n_id]);
8273 gl.useProgramStages(m_pipeline_object_ids[n_id], GL_TESS_EVALUATION_SHADER_BIT, m_te_po_ids[n_id]);
8274 gl.useProgramStages(m_pipeline_object_ids[n_id], GL_VERTEX_SHADER_BIT, m_vs_po_ids[n_id]);
8286 { m_po_ids[n_id], m_po_descriptors[n_id].fragment, m_fs_ids[n_id], GL_FRAGMENT_SHADER },
8287 { m_po_ids[n_id], m_po_descriptors[n_id].geometry, m_gs_ids[n_id], GL_GEOMETRY_SHADER },
8288 { m_po_ids[n_id], m_po_descriptors[n_id].tess_control, m_tc_ids[n_id], GL_TESS_CONTROL_SHADER },
8289 { m_po_ids[n_id], m_po_descriptors[n_id].tess_evaluation, m_te_ids[n_id], GL_TESS_EVALUATION_SHADER },
8290 { m_po_ids[n_id], m_po_descriptors[n_id].vertex, m_vs_ids[n_id], GL_VERTEX_SHADER },
8292 { m_fs_po_ids[n_id], m_fs_po_descriptors[n_id], m_fs_po_ids[n_id], GL_FRAGMENT_SHADER },
8293 { m_gs_po_ids[n_id], m_gs_po_descriptors[n_id], m_gs_po_ids[n_id], GL_GEOMETRY_SHADER },
8294 { m_tc_po_ids[n_id], m_tc_po_descriptors[n_id], m_tc_po_ids[n_id], GL_TESS_CONTROL_SHADER },
8295 { m_te_po_ids[n_id], m_te_po_descriptors[n_id], m_te_po_ids[n_id], GL_TESS_EVALUATION_SHADER },
8296 { m_vs_po_ids[n_id], m_vs_po_descriptors[n_id], m_vs_po_ids[n_id], GL_VERTEX_SHADER },
8340 if (m_po_ids[n_id] == current_item.po_id)
8348 gl.bindProgramPipeline(m_pipeline_object_ids[n_id]);
8364 if (m_po_ids[n_id] != current_item.po_id)
8375 n_id, SUBROUTINE_UNIFORMS_SET_TO_VALID_VALUES);
8382 gl.bindProgramPipeline(m_pipeline_object_ids[n_id]);
8387 n_id, SUBROUTINE_UNIFORMS_SET_TO_VALID_VALUES);
8400 * @param n_id Index of the program/pipeline object the shaders
8405 void FunctionalTest16::getShaderStages(bool retrieve_program_object_shader_ids, const unsigned int& n_id,
8410 out_shader_stages[0] = &m_po_descriptors[n_id].vertex;
8411 out_shader_stages[1] = &m_po_descriptors[n_id].tess_control;
8412 out_shader_stages[2] = &m_po_descriptors[n_id].tess_evaluation;
8413 out_shader_stages[3] = &m_po_descriptors[n_id].geometry;
8414 out_shader_stages[4] = &m_po_descriptors[n_id].fragment;
8418 out_shader_stages[0] = m_vs_po_descriptors + n_id;
8419 out_shader_stages[1] = m_tc_po_descriptors + n_id;
8420 out_shader_stages[2] = m_te_po_descriptors + n_id;
8421 out_shader_stages[3] = m_gs_po_descriptors + n_id;
8422 out_shader_stages[4] = m_fs_po_descriptors + n_id;
8769 * @param n_id Index of the program/pipeline object to use for the verification
8772 void FunctionalTest16::verifySubroutineUniformValues(const _test_case& test_case, const unsigned int& n_id,
8785 getShaderStages(test_case == TEST_CASE_SWITCH_TO_DIFFERENT_PROGRAM_OBJECT, n_id, stages);