The JUCE cross-platform C++ framework, with DISTRHO/KXStudio specific changes
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

168 lines
5.2KB

  1. /*
  2. ==============================================================================
  3. This file is part of the JUCE library.
  4. Copyright (c) 2017 - ROLI Ltd.
  5. JUCE is an open source library subject to commercial or open-source
  6. licensing.
  7. By using JUCE, you agree to the terms of both the JUCE 5 End-User License
  8. Agreement and JUCE 5 Privacy Policy (both updated and effective as of the
  9. 27th April 2017).
  10. End User License Agreement: www.juce.com/juce-5-licence
  11. Privacy Policy: www.juce.com/juce-5-privacy-policy
  12. Or: You may also use this code under the terms of the GPL v3 (see
  13. www.gnu.org/licenses).
  14. JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER
  15. EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE
  16. DISCLAIMED.
  17. ==============================================================================
  18. */
  19. namespace juce
  20. {
  21. /** These are important openGL values that aren't defined by default
  22. by the GL headers on various platforms.
  23. */
  24. enum MissingOpenGLDefinitions
  25. {
  26. #ifndef GL_CLAMP_TO_EDGE
  27. GL_CLAMP_TO_EDGE = 0x812f,
  28. #endif
  29. #ifndef GL_NUM_EXTENSIONS
  30. GL_NUM_EXTENSIONS = 0x821d,
  31. #endif
  32. #ifndef GL_BGRA_EXT
  33. GL_BGRA_EXT = 0x80e1,
  34. #endif
  35. #ifndef GL_DEPTH24_STENCIL8
  36. GL_DEPTH24_STENCIL8 = 0x88F0,
  37. #endif
  38. #ifndef GL_RGBA8
  39. GL_RGBA8 = GL_RGBA,
  40. #endif
  41. #ifndef GL_RGBA32F
  42. GL_RGBA32F = 0x8814,
  43. #endif
  44. #ifndef GL_COLOR_ATTACHMENT0
  45. GL_COLOR_ATTACHMENT0 = 0x8CE0,
  46. #endif
  47. #ifndef GL_DEPTH_ATTACHMENT
  48. GL_DEPTH_ATTACHMENT = 0x8D00,
  49. #endif
  50. #ifndef GL_FRAMEBUFFER
  51. GL_FRAMEBUFFER = 0x8D40,
  52. #endif
  53. #ifndef GL_FRAMEBUFFER_BINDING
  54. GL_FRAMEBUFFER_BINDING = 0x8CA6,
  55. #endif
  56. #ifndef GL_FRAMEBUFFER_COMPLETE
  57. GL_FRAMEBUFFER_COMPLETE = 0x8CD5,
  58. #endif
  59. #ifndef GL_RENDERBUFFER
  60. GL_RENDERBUFFER = 0x8D41,
  61. #endif
  62. #ifndef GL_RENDERBUFFER_DEPTH_SIZE
  63. GL_RENDERBUFFER_DEPTH_SIZE = 0x8D54,
  64. #endif
  65. #ifndef GL_STENCIL_ATTACHMENT
  66. GL_STENCIL_ATTACHMENT = 0x8D20,
  67. #endif
  68. #ifndef GL_MULTISAMPLE
  69. GL_MULTISAMPLE = 0x809D,
  70. #endif
  71. #ifndef GL_MAX_ELEMENTS_INDICES
  72. GL_MAX_ELEMENTS_INDICES = 0x80E9,
  73. #endif
  74. #if JUCE_WINDOWS && ! defined (GL_TEXTURE0)
  75. GL_OPERAND0_RGB = 0x8590,
  76. GL_OPERAND1_RGB = 0x8591,
  77. GL_OPERAND0_ALPHA = 0x8598,
  78. GL_OPERAND1_ALPHA = 0x8599,
  79. GL_SRC0_RGB = 0x8580,
  80. GL_SRC1_RGB = 0x8581,
  81. GL_SRC0_ALPHA = 0x8588,
  82. GL_SRC1_ALPHA = 0x8589,
  83. GL_TEXTURE0 = 0x84C0,
  84. GL_TEXTURE1 = 0x84C1,
  85. GL_TEXTURE2 = 0x84C2,
  86. GL_COMBINE = 0x8570,
  87. GL_COMBINE_RGB = 0x8571,
  88. GL_COMBINE_ALPHA = 0x8572,
  89. GL_PREVIOUS = 0x8578,
  90. GL_COMPILE_STATUS = 0x8B81,
  91. GL_LINK_STATUS = 0x8B82,
  92. GL_SHADING_LANGUAGE_VERSION = 0x8B8C,
  93. GL_FRAGMENT_SHADER = 0x8B30,
  94. GL_VERTEX_SHADER = 0x8B31,
  95. GL_ARRAY_BUFFER = 0x8892,
  96. GL_ELEMENT_ARRAY_BUFFER = 0x8893,
  97. GL_STATIC_DRAW = 0x88E4,
  98. GL_DYNAMIC_DRAW = 0x88E8,
  99. GL_STREAM_DRAW = 0x88E0,
  100. WGL_NUMBER_PIXEL_FORMATS_ARB = 0x2000,
  101. WGL_DRAW_TO_WINDOW_ARB = 0x2001,
  102. WGL_ACCELERATION_ARB = 0x2003,
  103. WGL_SWAP_METHOD_ARB = 0x2007,
  104. WGL_SUPPORT_OPENGL_ARB = 0x2010,
  105. WGL_PIXEL_TYPE_ARB = 0x2013,
  106. WGL_DOUBLE_BUFFER_ARB = 0x2011,
  107. WGL_COLOR_BITS_ARB = 0x2014,
  108. WGL_RED_BITS_ARB = 0x2015,
  109. WGL_GREEN_BITS_ARB = 0x2017,
  110. WGL_BLUE_BITS_ARB = 0x2019,
  111. WGL_ALPHA_BITS_ARB = 0x201B,
  112. WGL_DEPTH_BITS_ARB = 0x2022,
  113. WGL_STENCIL_BITS_ARB = 0x2023,
  114. WGL_FULL_ACCELERATION_ARB = 0x2027,
  115. WGL_ACCUM_RED_BITS_ARB = 0x201E,
  116. WGL_ACCUM_GREEN_BITS_ARB = 0x201F,
  117. WGL_ACCUM_BLUE_BITS_ARB = 0x2020,
  118. WGL_ACCUM_ALPHA_BITS_ARB = 0x2021,
  119. WGL_STEREO_ARB = 0x2012,
  120. WGL_SAMPLE_BUFFERS_ARB = 0x2041,
  121. WGL_SAMPLES_ARB = 0x2042,
  122. WGL_TYPE_RGBA_ARB = 0x202B,
  123. WGL_CONTEXT_MAJOR_VERSION_ARB = 0x2091,
  124. WGL_CONTEXT_MINOR_VERSION_ARB = 0x2092,
  125. WGL_CONTEXT_PROFILE_MASK_ARB = 0x9126,
  126. #endif
  127. #if JUCE_ANDROID
  128. JUCE_RGBA_FORMAT = GL_RGBA
  129. #else
  130. JUCE_RGBA_FORMAT = GL_BGRA_EXT
  131. #endif
  132. };
  133. #if JUCE_WINDOWS
  134. typedef char GLchar;
  135. typedef pointer_sized_int GLsizeiptr;
  136. typedef pointer_sized_int GLintptr;
  137. #endif
  138. } // namespace juce