Lines Matching refs:glw

51 		void bindRange(glw::GLenum target, glw::GLuint index, glw::GLintptr offset, glw::GLsizeiptr size);
55 void update(glw::GLenum target, glw::GLsizeiptr size, glw::GLvoid* data, glw::GLenum usage);
57 glw::GLuint m_id;
68 void attachTexture(glw::GLenum attachment, glw::GLuint texture_id, glw::GLuint width, glw::GLuint height);
71 void clear(glw::GLenum mask);
73 void clearColor(glw::GLfloat red, glw::GLfloat green, glw::GLfloat blue, glw::GLfloat alpha);
76 glw::GLuint m_id;
90 void build(const glw::GLchar* compute_shader_code, const glw::GLchar* fragment_shader_code,
91 const glw::GLchar* geometry_shader_code, const glw::GLchar* tesselation_control_shader_code,
92 const glw::GLchar* tesselation_evaluation_shader_code, const glw::GLchar* vertex_shader_code,
93 const glw::GLchar* const* varying_names, glw::GLuint n_varying_names, bool is_separable = false);
95 void compile(glw::GLuint shader_id, const glw::GLchar* shader_code) const;
99 void createFromBinary(const std::vector<glw::GLubyte>& binary, glw::GLenum binary_format);
101 void getBinary(std::vector<glw::GLubyte>& binary, glw::GLenum& binary_format) const;
103 glw::GLuint getSubroutineIndex(const glw::GLchar* subroutine_name, glw::GLenum shader_stage) const;
105 glw::GLint getSubroutineUniformLocation(const glw::GLchar* uniform_name, glw::GLenum shader_stage) const;
107 glw::GLint getUniformLocation(const glw::GLchar* uniform_name) const;
112 static const glw::GLenum ARB_COMPUTE_SHADER;
114 glw::GLuint m_compute_shader_id;
115 glw::GLuint m_fragment_shader_id;
116 glw::GLuint m_geometry_shader_id;
117 glw::GLuint m_program_object_id;
118 glw::GLuint m_tesselation_control_shader_id;
119 glw::GLuint m_tesselation_evaluation_shader_id;
120 glw::GLuint m_vertex_shader_id;
133 void create(glw::GLuint width, glw::GLuint height, glw::GLenum internal_format);
135 void get(glw::GLenum format, glw::GLenum type, glw::GLvoid* out_data);
137 void update(glw::GLuint width, glw::GLuint height, glw::GLenum format, glw::GLenum type, glw::GLvoid* data);
139 glw::GLuint m_id;
153 glw::GLuint m_id;
246 static bool buildProgram(const glw::Functions& gl, const std::string& vs_body, const std::string& tc_body,
248 const glw::GLchar** xfb_varyings, const unsigned int& n_xfb_varyings,
249 glw::GLuint* out_vs_id, glw::GLuint* out_tc_id, glw::GLuint* out_te_id,
250 glw::GLuint* out_gs_id, glw::GLuint* out_fs_id, glw::GLuint* out_po_id);
256 static glw::GLenum getGLenumForShaderStage(const _shader_stage& shader_stage);
262 static std::string getShaderStageStringFromGLEnum(const glw::GLenum shader_stage_glenum);
269 static const glw::GLchar* programInterfaceToStr(glw::GLenum program_interface);
270 static const glw::GLchar* pnameToStr(glw::GLenum pname);
280 static bool compare(const glw::GLfloat& left, const glw::GLfloat& right);
325 glw::GLchar* m_buffer;
327 glw::GLuint m_po_id;
331 glw::GLuint m_vs_id;
375 glw::GLuint m_po_id;
376 glw::GLuint m_po_getter0_subroutine_index;
377 glw::GLuint m_po_getter1_subroutine_index;
378 glw::GLint m_po_subroutine_uniform_index;
380 glw::GLuint m_xfb_bo_id;
381 glw::GLuint m_vao_id;
382 glw::GLuint m_vs_id;
412 glw::GLenum pname;
413 glw::GLint expected_value;
422 glw::GLenum program_interface;
423 glw::GLenum pname;
424 glw::GLint expected_value;
428 bool checkProgramStageiv(glw::GLuint program_id, glw::GLenum pname, glw::GLint expected) const;
430 bool checkProgramResourceiv(glw::GLuint program_id, glw::GLenum program_interface, glw::GLenum prop,
431 const glw::GLchar* resource_name, glw::GLint expected) const;
433 bool checkProgramInterfaceiv(glw::GLuint program_id, glw::GLenum program_interface, glw::GLenum pname,
434 glw::GLint expected) const;
436 bool checkActiveSubroutineUniformiv(glw::GLuint program_id, glw::GLuint index, glw::GLenum pname,
437 glw::GLint expected) const;
439 glw::GLuint getProgramResourceIndex(glw::GLuint program_id, glw::GLenum program_interface,
440 const glw::GLchar* resource_name) const;
442 glw::GLuint getSubroutineIndex(glw::GLuint program_id, const glw::GLchar* subroutine_name,
445 glw::GLint getSubroutineUniformLocation(glw::GLuint program_id, const glw::GLchar* uniform_name,
448 bool inspectProgramStageiv(glw::GLuint program_id) const;
449 bool inspectProgramInterfaceiv(glw::GLuint program_id) const;
451 bool inspectProgramResourceiv(glw::GLuint program_id, const glw::GLchar** subroutine_names,
452 const glw::GLchar** uniform_names) const;
454 bool inspectActiveSubroutineUniformiv(glw::GLuint program_id, const glw::GLchar** uniform_names) const;
456 bool inspectActiveSubroutineUniformName(glw::GLuint program_id, const glw::GLchar** uniform_names) const;
458 bool inspectActiveSubroutineName(glw::GLuint program_id, const glw::GLchar** subroutine_names) const;
460 bool inspectSubroutineBinding(glw::GLuint program_id, const glw::GLchar** subroutine_names,
461 const glw::GLchar** uniform_names, bool use_program_query) const;
463 bool testDraw(glw::GLuint program_id, const glw::GLchar* first_routine_name, const glw::GLchar* second_routine_name,
464 const glw::GLchar** uniform_names, const Utils::vec4<glw::GLfloat> data[5],
468 glw::GLint m_n_active_subroutine_uniforms;
469 glw::GLint m_n_active_subroutine_uniform_locations;
470 glw::GLint m_n_active_subroutines;
471 glw::GLint m_n_active_subroutine_uniform_name_length;
472 glw::GLint m_n_active_subroutine_name_length;
473 glw::GLint m_n_active_subroutine_uniform_size;
492 void logError(const glw::GLchar* subroutine_names[4][2], const glw::GLuint subroutine_combination[4],
493 const Utils::vec4<glw::GLfloat> input_data[3], const Utils::vec4<glw::GLfloat>& first_routine_result,
494 const Utils::vec4<glw::GLfloat>& second_routine_result,
495 const Utils::vec4<glw::GLfloat>& third_routine_result,
496 const Utils::vec4<glw::GLuint>& fourth_routine_result,
497 const Utils::vec4<glw::GLfloat>& first_routine_expected_result,
498 const Utils::vec4<glw::GLfloat>& second_routine_expected_result,
499 const Utils::vec4<glw::GLfloat>& third_routine_expected_result,
500 const Utils::vec4<glw::GLuint>& fourth_routine_expected_result) const;
502 void testDraw(const glw::GLuint subroutine_combination[4], const Utils::vec4<glw::GLfloat> input_data[3],
503 Utils::vec4<glw::GLfloat>& out_first_routine_result,
504 Utils::vec4<glw::GLfloat>& out_second_routine_result,
505 Utils::vec4<glw::GLfloat>& out_third_routine_result,
506 Utils::vec4<glw::GLuint>& out_fourth_routine_result) const;
508 bool verify(const Utils::vec4<glw::GLfloat>& first_routine_result,
509 const Utils::vec4<glw::GLfloat>& second_routine_result,
510 const Utils::vec4<glw::GLfloat>& third_routine_result,
511 const Utils::vec4<glw::GLuint>& fourth_routine_result,
512 const Utils::vec4<glw::GLfloat>& first_routine_expected_result,
513 const Utils::vec4<glw::GLfloat>& second_routine_expected_result,
514 const Utils::vec4<glw::GLfloat>& third_routine_expected_result,
515 const Utils::vec4<glw::GLuint>& fourth_routine_expected_result) const;
518 glw::GLuint m_subroutine_uniform_locations[4][1];
519 glw::GLuint m_subroutine_indices[4][2];
520 glw::GLuint m_uniform_locations[3];
559 void calculate(glw::GLuint function, const Utils::vec4<glw::GLfloat>& left, const Utils::vec4<glw::GLfloat>& right,
560 Utils::vec4<glw::GLfloat>& out) const;
562 void calculate(const glw::GLuint combination[4], const Utils::vec4<glw::GLfloat>& left,
563 const Utils::vec4<glw::GLfloat>& right, const Utils::vec4<glw::GLuint>& indices,
564 Utils::vec4<glw::GLfloat>& out_combined, Utils::vec4<glw::GLfloat>& out_combined_inversed,
565 Utils::vec4<glw::GLfloat>& out_constant, Utils::vec4<glw::GLfloat>& out_constant_inversed,
566 Utils::vec4<glw::GLfloat>& out_dynamic, Utils::vec4<glw::GLfloat>& out_dynamic_inversed,
567 Utils::vec4<glw::GLfloat>& out_loop) const;
569 void logError(const glw::GLuint combination[4], const Utils::vec4<glw::GLfloat>& left,
570 const Utils::vec4<glw::GLfloat>& right, const Utils::vec4<glw::GLuint>& indices,
571 const Utils::vec4<glw::GLfloat> vec4_expected[7], const Utils::vec4<glw::GLfloat> vec4_result[7],
572 glw::GLuint array_length, bool result[7]) const;
574 bool testDraw(const glw::GLuint combination[4], const Utils::vec4<glw::GLfloat>& left,
575 const Utils::vec4<glw::GLfloat>& right, const Utils::vec4<glw::GLuint>& indices) const;
578 glw::GLuint m_subroutine_uniform_locations[4];
579 glw::GLuint m_subroutine_indices[2];
580 glw::GLuint m_uniform_locations[3];
602 void verifyXFBData(const glw::GLvoid* data_ptr);
607 glw::GLuint m_po_id;
608 glw::GLuint m_vao_id;
609 glw::GLuint m_vs_id;
610 glw::GLuint m_xfb_bo_id;
627 glw::GLint testDraw(const glw::GLuint routine_indices[16]) const;
630 glw::GLuint m_subroutine_uniform_locations[16];
631 glw::GLuint m_subroutine_indices[2];
652 testConfiguration(const glw::GLchar* description, const glw::GLubyte expected_color[4],
653 glw::GLuint discard_fragment, glw::GLuint set_global_colors, glw::GLuint sample_texture,
654 glw::GLuint compare, glw::GLuint test, glw::GLuint first_sampler, glw::GLuint second_sampler)
673 const glw::GLchar* m_description;
674 glw::GLubyte m_expected_color[4];
675 glw::GLuint m_routines[5];
676 glw::GLuint m_samplers[2];
680 void fillTexture(Utils::texture& texture, const glw::GLubyte color[4]) const;
682 bool testDraw(const glw::GLuint routine_configuration[5], const glw::GLuint sampler_configuration[2],
683 const glw::GLubyte expected_color[4], Utils::texture& color_texture) const;
687 static const glw::GLuint m_texture_height;
688 static const glw::GLuint m_texture_width;
691 glw::GLuint m_subroutine_uniform_locations[5];
692 glw::GLuint m_subroutine_indices[5][2];
693 glw::GLuint m_uniform_locations[2];
694 glw::GLuint m_source_textures[2];
714 void fillTexture(Utils::texture& texture, const glw::GLuint color[4]) const;
716 bool verifyTexture(Utils::texture& texture, const glw::GLuint color[4]) const;
720 bool testAtomicDraw(glw::GLuint subourinte_index, const glw::GLuint expected_results[3]) const;
724 bool testImageDraw(glw::GLuint subroutine_index, Utils::texture& left, Utils::texture& right,
725 const glw::GLuint expected_left_color[4], const glw::GLuint expected_right_color[4]) const;
729 bool testSSBODraw(glw::GLuint subourinte_index, const glw::GLuint expected_results[4]) const;
733 static const glw::GLuint m_texture_height;
734 static const glw::GLuint m_texture_width;
737 glw::GLuint m_left_image;
738 glw::GLuint m_right_image;
770 glw::GLuint m_fbo_id;
771 glw::GLuint m_fs_po_ids[2];
772 glw::GLuint m_gs_po_ids[2];
773 glw::GLuint m_pipeline_id;
775 glw::GLuint m_tc_po_ids[2];
776 glw::GLuint m_te_po_ids[2];
778 glw::GLuint m_to_id;
780 glw::GLuint m_vao_id;
781 glw::GLuint m_vs_po_ids[2];
811 bool testDefaultSubroutineSet(const Utils::vec4<glw::GLuint>& uni_input,
812 const Utils::vec4<glw::GLuint> expected_routine_1_result[2],
813 const Utils::vec4<glw::GLuint> expected_routine_2_result[2]) const;
815 bool testDraw(glw::GLuint routine_configuration, const Utils::vec4<glw::GLuint>& uni_input,
816 const Utils::vec4<glw::GLuint>& expected_routine_1_result,
817 const Utils::vec4<glw::GLuint>& expected_routine_2_result) const;
823 glw::GLuint m_subroutine_uniform_locations[2];
824 glw::GLuint m_subroutine_indices[2][2];
825 glw::GLuint m_uniform_location;
826 glw::GLuint m_initial_subroutine_uniform_locations[2];
827 glw::GLuint m_initial_subroutine_indices[2][2];
872 glw::GLuint default_subroutine1_value;
873 glw::GLuint default_subroutine2_value;
874 glw::GLuint default_subroutine3_value;
875 glw::GLuint default_subroutine4_value;
876 glw::GLint subroutine1_uniform_location;
877 glw::GLint subroutine2_uniform_location;
878 glw::GLint subroutine3_uniform_location;
879 glw::GLint subroutine4_uniform_location;
880 glw::GLuint function1_index;
881 glw::GLuint function2_index;
882 glw::GLuint function3_index;
883 glw::GLuint function4_index;
885 glw::GLenum gl_stage;
924 glw::GLuint m_fs_ids[2];
925 glw::GLuint m_gs_ids[2];
926 glw::GLuint m_po_ids[2];
927 glw::GLuint m_tc_ids[2];
928 glw::GLuint m_te_ids[2];
929 glw::GLuint m_vs_ids[2];
931 glw::GLuint m_fs_po_ids[2];
932 glw::GLuint m_gs_po_ids[2];
933 glw::GLuint m_pipeline_object_ids[2];
934 glw::GLuint m_tc_po_ids[2];
935 glw::GLuint m_te_po_ids[2];
936 glw::GLuint m_vs_po_ids[2];
972 glw::GLuint m_fbo_id;
973 glw::GLuint m_fs_id;
974 glw::GLuint m_gs_id;
976 glw::GLuint m_po_id;
977 glw::GLuint m_tc_id;
978 glw::GLuint m_te_id;
981 glw::GLuint m_to_id;
983 glw::GLuint m_vao_id;
984 glw::GLuint m_vs_id;
1010 void executeTest(glw::GLuint bool_operator1_subroutine_location, glw::GLuint bool_operator2_subroutine_location,
1011 glw::GLuint vec4_operator1_subroutine_location, glw::GLuint vec4_operator2_subroutine_location);
1016 void verifyXFBData(const glw::GLvoid* data, glw::GLuint bool_operator1_subroutine_location,
1017 glw::GLuint bool_operator2_subroutine_location, glw::GLuint vec4_operator1_subroutine_location,
1018 glw::GLuint vec4_operator2_subroutine_location);
1026 glw::GLuint m_po_id;
1027 glw::GLuint m_po_subroutine_divide_by_two_location;
1028 glw::GLuint m_po_subroutine_multiply_by_four_location;
1029 glw::GLuint m_po_subroutine_returns_false_location;
1030 glw::GLuint m_po_subroutine_returns_true_location;
1031 glw::GLint m_po_subroutine_uniform_bool_operator1;
1032 glw::GLint m_po_subroutine_uniform_bool_operator2;
1033 glw::GLint m_po_subroutine_uniform_vec4_processor1;
1034 glw::GLint m_po_subroutine_uniform_vec4_processor2;
1035 glw::GLuint m_xfb_bo_id;
1036 glw::GLuint m_vao_id;
1037 glw::GLuint m_vs_id;
1059 glw::GLint m_po_active_subroutine_uniform_locations;
1060 glw::GLint m_po_active_subroutine_uniforms;
1061 glw::GLint m_po_active_subroutines;
1062 glw::GLint m_po_subroutine_uniform_function_index;
1063 glw::GLint m_po_subroutine_uniform_function2_index;
1064 glw::GLuint m_po_subroutine_test1_index;
1065 glw::GLuint m_po_subroutine_test2_index;
1066 glw::GLuint m_po_subroutine_test3_index;
1067 glw::GLuint m_po_not_linked_id;
1068 glw::GLuint m_po_id;
1069 glw::GLuint m_vs_id;
1099 glw::GLuint m_fs_id;
1100 glw::GLuint m_gs_id;
1102 glw::GLuint m_po_id;
1103 glw::GLuint m_tc_id;
1104 glw::GLuint m_te_id;
1105 glw::GLuint m_vs_id;
1131 glw::GLuint m_so_id;
1169 glw::GLint m_so_id;
1196 glw::GLuint m_fs_id;
1197 glw::GLuint m_gs_id;
1199 glw::GLuint m_po_id;
1200 glw::GLuint m_tc_id;
1201 glw::GLuint m_te_id;
1202 glw::GLuint m_vs_id;
1230 glw::GLuint m_fs_id;
1231 glw::GLuint m_gs_id;
1233 glw::GLuint m_po_id;
1234 glw::GLuint m_tc_id;
1235 glw::GLuint m_te_id;
1236 glw::GLuint m_vs_id;
1253 bool test(const glw::GLchar* vertex_shader_code, const glw::GLchar* name_of_recursive_routine);
1256 glw::GLuint m_program_id;
1257 glw::GLuint m_vertex_shader_id;
1284 glw::GLuint m_fs_id;
1285 glw::GLuint m_gs_id;
1287 glw::GLuint m_po_id;
1288 glw::GLuint m_tc_id;
1289 glw::GLuint m_te_id;
1290 glw::GLuint m_vs_id;
1327 glw::GLuint m_po_id;
1328 glw::GLuint m_vs_id;
1373 glw::GLuint m_fs_id;
1374 glw::GLuint m_gs_id;
1375 glw::GLuint m_po_id;
1376 glw::GLuint m_tc_id;
1377 glw::GLuint m_te_id;
1379 glw::GLuint m_vs_id;
1416 glw::GLuint m_po_id;
1417 glw::GLuint m_vs_id;
1456 glw::GLuint m_po_id;
1457 glw::GLuint m_vs_id;