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.

130 lines
3.7KB

  1. /*
  2. ==============================================================================
  3. This file is part of the JUCE library - "Jules' Utility Class Extensions"
  4. Copyright 2004-11 by Raw Material Software Ltd.
  5. ------------------------------------------------------------------------------
  6. JUCE can be redistributed and/or modified under the terms of the GNU General
  7. Public License (Version 2), as published by the Free Software Foundation.
  8. A copy of the license is included in the JUCE distribution, or can be found
  9. online at www.gnu.org/licenses.
  10. JUCE is distributed in the hope that it will be useful, but WITHOUT ANY
  11. WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
  12. A PARTICULAR PURPOSE. See the GNU General Public License for more details.
  13. ------------------------------------------------------------------------------
  14. To release a closed-source product which uses JUCE, commercial licenses are
  15. available: visit www.rawmaterialsoftware.com/juce for more information.
  16. ==============================================================================
  17. */
  18. #ifndef __JUCE_OPENGL_JUCEHEADER__
  19. #define __JUCE_OPENGL_JUCEHEADER__
  20. #include "../juce_gui_extra/juce_gui_extra.h"
  21. #undef JUCE_OPENGL
  22. #define JUCE_OPENGL 1
  23. #if JUCE_IOS || JUCE_ANDROID
  24. #define JUCE_OPENGL_ES 1
  25. #endif
  26. #if JUCE_WINDOWS
  27. #ifndef APIENTRY
  28. #define APIENTRY __stdcall
  29. #define CLEAR_TEMP_APIENTRY 1
  30. #endif
  31. #ifndef WINGDIAPI
  32. #define WINGDIAPI __declspec(dllimport)
  33. #define CLEAR_TEMP_WINGDIAPI 1
  34. #endif
  35. #include <gl/GL.h>
  36. #ifdef CLEAR_TEMP_WINGDIAPI
  37. #undef WINGDIAPI
  38. #undef CLEAR_TEMP_WINGDIAPI
  39. #endif
  40. #ifdef CLEAR_TEMP_APIENTRY
  41. #undef APIENTRY
  42. #undef CLEAR_TEMP_APIENTRY
  43. #endif
  44. #elif JUCE_LINUX
  45. #include <GL/gl.h>
  46. #undef KeyPress
  47. #elif JUCE_IOS
  48. #include <OpenGLES/ES1/gl.h>
  49. #include <OpenGLES/ES1/glext.h>
  50. #elif JUCE_MAC
  51. #include <OpenGL/gl.h>
  52. #include "OpenGL/glext.h"
  53. #elif JUCE_ANDROID
  54. #include <GLES/gl.h>
  55. #endif
  56. #ifndef GL_BGRA_EXT
  57. #define GL_BGRA_EXT 0x80e1
  58. #endif
  59. #ifndef GL_CLAMP_TO_EDGE
  60. #define GL_CLAMP_TO_EDGE 0x812f
  61. #endif
  62. #ifndef GL_DEPTH_COMPONENT16
  63. #define GL_DEPTH_COMPONENT16 0x81a5
  64. #endif
  65. //=============================================================================
  66. BEGIN_JUCE_NAMESPACE
  67. #include "opengl/juce_OpenGLRenderingTarget.h"
  68. // START_AUTOINCLUDE opengl
  69. #ifndef __JUCE_DRAGGABLE3DORIENTATION_JUCEHEADER__
  70. #include "opengl/juce_Draggable3DOrientation.h"
  71. #endif
  72. #ifndef __JUCE_MATRIX3D_JUCEHEADER__
  73. #include "opengl/juce_Matrix3D.h"
  74. #endif
  75. #ifndef __JUCE_OPENGLCOMPONENT_JUCEHEADER__
  76. #include "opengl/juce_OpenGLComponent.h"
  77. #endif
  78. #ifndef __JUCE_OPENGLCONTEXT_JUCEHEADER__
  79. #include "opengl/juce_OpenGLContext.h"
  80. #endif
  81. #ifndef __JUCE_OPENGLFRAMEBUFFER_JUCEHEADER__
  82. #include "opengl/juce_OpenGLFrameBuffer.h"
  83. #endif
  84. #ifndef __JUCE_OPENGLGRAPHICSCONTEXT_JUCEHEADER__
  85. #include "opengl/juce_OpenGLGraphicsContext.h"
  86. #endif
  87. #ifndef __JUCE_OPENGLHELPERS_JUCEHEADER__
  88. #include "opengl/juce_OpenGLHelpers.h"
  89. #endif
  90. #ifndef __JUCE_OPENGLIMAGE_JUCEHEADER__
  91. #include "opengl/juce_OpenGLImage.h"
  92. #endif
  93. #ifndef __JUCE_OPENGLPIXELFORMAT_JUCEHEADER__
  94. #include "opengl/juce_OpenGLPixelFormat.h"
  95. #endif
  96. #ifndef __JUCE_OPENGLRENDERINGTARGET_JUCEHEADER__
  97. #include "opengl/juce_OpenGLRenderingTarget.h"
  98. #endif
  99. #ifndef __JUCE_OPENGLTEXTURE_JUCEHEADER__
  100. #include "opengl/juce_OpenGLTexture.h"
  101. #endif
  102. #ifndef __JUCE_QUATERNION_JUCEHEADER__
  103. #include "opengl/juce_Quaternion.h"
  104. #endif
  105. #ifndef __JUCE_VECTOR3D_JUCEHEADER__
  106. #include "opengl/juce_Vector3D.h"
  107. #endif
  108. // END_AUTOINCLUDE
  109. END_JUCE_NAMESPACE
  110. #endif // __JUCE_OPENGL_JUCEHEADER__