/src/OpenGL/entrypoints/GL3.0/gl_get_frag_data_location.cpp

https://github.com/kbiElude/VKGL · C++ · 59 lines · 44 code · 10 blank · 5 comment · 1 complexity · 0cdf978cd89edf0e56a97c7557d9fb12 MD5 · raw file

  1. /* VKGL (c) 2018 Dominik Witczak
  2. *
  3. * This code is licensed under MIT license (see LICENSE.txt for details)
  4. */
  5. #include "OpenGL/entrypoints/GL3.0/gl_get_frag_data_location.h"
  6. #include "OpenGL/context.h"
  7. #include "OpenGL/globals.h"
  8. static bool validate(OpenGL::Context* in_context_ptr,
  9. const GLuint& in_program,
  10. const GLchar* in_name_ptr)
  11. {
  12. bool result = false;
  13. // ..
  14. result = true;
  15. return result;
  16. }
  17. GLint VKGL_APIENTRY OpenGL::vkglGetFragDataLocation(GLuint program,
  18. const GLchar* name)
  19. {
  20. const auto& dispatch_table_ptr = OpenGL::g_dispatch_table_ptr;
  21. VKGL_TRACE("glGetFragDataLocation(program=[%u] name=[%s])",
  22. program,
  23. name);
  24. return dispatch_table_ptr->pGLGetFragDataLocation(dispatch_table_ptr->bound_context_ptr,
  25. program,
  26. name);
  27. }
  28. static GLint vkglGetFragDataLocation_execute(OpenGL::Context* in_context_ptr,
  29. const GLuint& in_program,
  30. const GLchar* in_name_ptr)
  31. {
  32. return in_context_ptr->get_frag_data_location(in_program,
  33. in_name_ptr);
  34. }
  35. GLint OpenGL::vkglGetFragDataLocation_with_validation(OpenGL::Context* in_context_ptr,
  36. const GLuint& in_program,
  37. const GLchar* in_name_ptr)
  38. {
  39. GLint result = INT32_MAX;
  40. if (validate(in_context_ptr,
  41. in_program,
  42. in_name_ptr) )
  43. {
  44. result = vkglGetFragDataLocation_execute(in_context_ptr,
  45. in_program,
  46. in_name_ptr);
  47. }
  48. return result;
  49. }