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.

129 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. #define JUCE_USE_OPENGL_FIXED_FUNCTION 0
  26. #endif
  27. #if JUCE_WINDOWS
  28. #ifndef APIENTRY
  29. #define APIENTRY __stdcall
  30. #define CLEAR_TEMP_APIENTRY 1
  31. #endif
  32. #ifndef WINGDIAPI
  33. #define WINGDIAPI __declspec(dllimport)
  34. #define CLEAR_TEMP_WINGDIAPI 1
  35. #endif
  36. #include <gl/GL.h>
  37. #ifdef CLEAR_TEMP_WINGDIAPI
  38. #undef WINGDIAPI
  39. #undef CLEAR_TEMP_WINGDIAPI
  40. #endif
  41. #ifdef CLEAR_TEMP_APIENTRY
  42. #undef APIENTRY
  43. #undef CLEAR_TEMP_APIENTRY
  44. #endif
  45. #elif JUCE_LINUX
  46. #include <GL/gl.h>
  47. #undef KeyPress
  48. #elif JUCE_IOS
  49. #include <OpenGLES/ES1/gl.h>
  50. #include <OpenGLES/ES1/glext.h>
  51. #elif JUCE_MAC
  52. #include <OpenGL/gl.h>
  53. #include "OpenGL/glext.h"
  54. #elif JUCE_ANDROID
  55. #include <GLES2/gl2.h>
  56. #endif
  57. #if (JUCE_MAC || JUCE_WINDOWS || JUCE_LINUX || JUCE_ANDROID) && ! defined (JUCE_USE_OPENGL_SHADERS)
  58. #define JUCE_USE_OPENGL_SHADERS 1
  59. #endif
  60. #ifndef JUCE_USE_OPENGL_FIXED_FUNCTION
  61. #define JUCE_USE_OPENGL_FIXED_FUNCTION 1
  62. #endif
  63. //=============================================================================
  64. namespace juce
  65. {
  66. #include "opengl/juce_OpenGLHelpers.h"
  67. // START_AUTOINCLUDE opengl
  68. #ifndef __JUCE_DRAGGABLE3DORIENTATION_JUCEHEADER__
  69. #include "opengl/juce_Draggable3DOrientation.h"
  70. #endif
  71. #ifndef __JUCE_MATRIX3D_JUCEHEADER__
  72. #include "opengl/juce_Matrix3D.h"
  73. #endif
  74. #ifndef __JUCE_OPENGLCOMPONENT_JUCEHEADER__
  75. #include "opengl/juce_OpenGLComponent.h"
  76. #endif
  77. #ifndef __JUCE_OPENGLCONTEXT_JUCEHEADER__
  78. #include "opengl/juce_OpenGLContext.h"
  79. #endif
  80. #ifndef __JUCE_OPENGLFRAMEBUFFER_JUCEHEADER__
  81. #include "opengl/juce_OpenGLFrameBuffer.h"
  82. #endif
  83. #ifndef __JUCE_OPENGLGRAPHICSCONTEXT_JUCEHEADER__
  84. #include "opengl/juce_OpenGLGraphicsContext.h"
  85. #endif
  86. #ifndef __JUCE_OPENGLHELPERS_JUCEHEADER__
  87. #include "opengl/juce_OpenGLHelpers.h"
  88. #endif
  89. #ifndef __JUCE_OPENGLIMAGE_JUCEHEADER__
  90. #include "opengl/juce_OpenGLImage.h"
  91. #endif
  92. #ifndef __JUCE_OPENGLPIXELFORMAT_JUCEHEADER__
  93. #include "opengl/juce_OpenGLPixelFormat.h"
  94. #endif
  95. #ifndef __JUCE_OPENGLSHADERPROGRAM_JUCEHEADER__
  96. #include "opengl/juce_OpenGLShaderProgram.h"
  97. #endif
  98. #ifndef __JUCE_OPENGLTEXTURE_JUCEHEADER__
  99. #include "opengl/juce_OpenGLTexture.h"
  100. #endif
  101. #ifndef __JUCE_QUATERNION_JUCEHEADER__
  102. #include "opengl/juce_Quaternion.h"
  103. #endif
  104. #ifndef __JUCE_VECTOR3D_JUCEHEADER__
  105. #include "opengl/juce_Vector3D.h"
  106. #endif
  107. // END_AUTOINCLUDE
  108. }
  109. #endif // __JUCE_OPENGL_JUCEHEADER__