Signed-off-by: falkTX <falktx@falktx.com>pull/321/head
@@ -0,0 +1,112 @@ | |||||
/* | |||||
* DISTRHO Plugin Framework (DPF) | |||||
* Copyright (C) 2012-2021 Filipe Coelho <falktx@falktx.com> | |||||
* | |||||
* Permission to use, copy, modify, and/or distribute this software for any purpose with | |||||
* or without fee is hereby granted, provided that the above copyright notice and this | |||||
* permission notice appear in all copies. | |||||
* | |||||
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD | |||||
* TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN | |||||
* NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL | |||||
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER | |||||
* IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN | |||||
* CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | |||||
*/ | |||||
#ifndef DGL_OPENGL_INCLUDE_HPP_INCLUDED | |||||
#define DGL_OPENGL_INCLUDE_HPP_INCLUDED | |||||
#include "../distrho/src/DistrhoDefines.h" | |||||
// -------------------------------------------------------------------------------------------------------------------- | |||||
// Fix OpenGL includes for Windows, based on glfw code (part 1) | |||||
#undef DGL_CALLBACK_DEFINED | |||||
#undef DGL_WINGDIAPI_DEFINED | |||||
#ifdef DISTRHO_OS_WINDOWS | |||||
#ifndef APIENTRY | |||||
# define APIENTRY __stdcall | |||||
#endif // APIENTRY | |||||
/* We need WINGDIAPI defined */ | |||||
#ifndef WINGDIAPI | |||||
# if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__POCC__) | |||||
# define WINGDIAPI __declspec(dllimport) | |||||
# elif defined(__LCC__) | |||||
# define WINGDIAPI __stdcall | |||||
# else | |||||
# define WINGDIAPI extern | |||||
# endif | |||||
# define DGL_WINGDIAPI_DEFINED | |||||
#endif // WINGDIAPI | |||||
/* Some <GL/glu.h> files also need CALLBACK defined */ | |||||
#ifndef CALLBACK | |||||
# if defined(_MSC_VER) | |||||
# if (defined(_M_MRX000) || defined(_M_IX86) || defined(_M_ALPHA) || defined(_M_PPC)) && !defined(MIDL_PASS) | |||||
# define CALLBACK __stdcall | |||||
# else | |||||
# define CALLBACK | |||||
# endif | |||||
# else | |||||
# define CALLBACK __stdcall | |||||
# endif | |||||
# define DGL_CALLBACK_DEFINED | |||||
#endif // CALLBACK | |||||
#endif // DISTRHO_OS_WINDOWS | |||||
// -------------------------------------------------------------------------------------------------------------------- | |||||
// OpenGL includes | |||||
#ifdef DISTRHO_OS_MAC | |||||
# ifdef DGL_USE_OPENGL3 | |||||
# include <OpenGL/gl3.h> | |||||
# include <OpenGL/gl3ext.h> | |||||
# else | |||||
# include <OpenGL/gl.h> | |||||
# endif | |||||
#else | |||||
# ifndef DISTRHO_OS_WINDOWS | |||||
# define GL_GLEXT_PROTOTYPES | |||||
# endif | |||||
# ifndef __GLEW_H__ | |||||
# include <GL/gl.h> | |||||
# include <GL/glext.h> | |||||
# endif | |||||
#endif | |||||
// -------------------------------------------------------------------------------------------------------------------- | |||||
// Missing OpenGL defines | |||||
#if defined(GL_BGR_EXT) && !defined(GL_BGR) | |||||
# define GL_BGR GL_BGR_EXT | |||||
#endif | |||||
#if defined(GL_BGRA_EXT) && !defined(GL_BGRA) | |||||
# define GL_BGRA GL_BGRA_EXT | |||||
#endif | |||||
#ifndef GL_CLAMP_TO_BORDER | |||||
# define GL_CLAMP_TO_BORDER 0x812D | |||||
#endif | |||||
// -------------------------------------------------------------------------------------------------------------------- | |||||
// Fix OpenGL includes for Windows, based on glfw code (part 2) | |||||
#ifdef DGL_CALLBACK_DEFINED | |||||
# undef CALLBACK | |||||
# undef DGL_CALLBACK_DEFINED | |||||
#endif | |||||
#ifdef DGL_WINGDIAPI_DEFINED | |||||
# undef WINGDIAPI | |||||
# undef DGL_WINGDIAPI_DEFINED | |||||
#endif | |||||
// -------------------------------------------------------------------------------------------------------------------- | |||||
#endif |
@@ -1,6 +1,6 @@ | |||||
/* | /* | ||||
* DISTRHO Plugin Framework (DPF) | * DISTRHO Plugin Framework (DPF) | ||||
* Copyright (C) 2012-2021 Filipe Coelho <falktx@falktx.com> | |||||
* Copyright (C) 2012-2022 Filipe Coelho <falktx@falktx.com> | |||||
* | * | ||||
* Permission to use, copy, modify, and/or distribute this software for any purpose with | * Permission to use, copy, modify, and/or distribute this software for any purpose with | ||||
* or without fee is hereby granted, provided that the above copyright notice and this | * or without fee is hereby granted, provided that the above copyright notice and this | ||||
@@ -20,96 +20,7 @@ | |||||
#include "ImageBase.hpp" | #include "ImageBase.hpp" | ||||
#include "ImageBaseWidgets.hpp" | #include "ImageBaseWidgets.hpp" | ||||
// ----------------------------------------------------------------------- | |||||
// Fix OpenGL includes for Windows, based on glfw code (part 1) | |||||
#undef DGL_CALLBACK_DEFINED | |||||
#undef DGL_WINGDIAPI_DEFINED | |||||
#ifdef DISTRHO_OS_WINDOWS | |||||
#ifndef APIENTRY | |||||
# define APIENTRY __stdcall | |||||
#endif // APIENTRY | |||||
/* We need WINGDIAPI defined */ | |||||
#ifndef WINGDIAPI | |||||
# if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__POCC__) | |||||
# define WINGDIAPI __declspec(dllimport) | |||||
# elif defined(__LCC__) | |||||
# define WINGDIAPI __stdcall | |||||
# else | |||||
# define WINGDIAPI extern | |||||
# endif | |||||
# define DGL_WINGDIAPI_DEFINED | |||||
#endif // WINGDIAPI | |||||
/* Some <GL/glu.h> files also need CALLBACK defined */ | |||||
#ifndef CALLBACK | |||||
# if defined(_MSC_VER) | |||||
# if (defined(_M_MRX000) || defined(_M_IX86) || defined(_M_ALPHA) || defined(_M_PPC)) && !defined(MIDL_PASS) | |||||
# define CALLBACK __stdcall | |||||
# else | |||||
# define CALLBACK | |||||
# endif | |||||
# else | |||||
# define CALLBACK __stdcall | |||||
# endif | |||||
# define DGL_CALLBACK_DEFINED | |||||
#endif // CALLBACK | |||||
/* Most GL/glu.h variants on Windows need wchar_t */ | |||||
#include <cstddef> | |||||
#endif // DISTRHO_OS_WINDOWS | |||||
// ----------------------------------------------------------------------- | |||||
// OpenGL includes | |||||
#ifdef DISTRHO_OS_MAC | |||||
# ifdef DGL_USE_OPENGL3 | |||||
# include <OpenGL/gl3.h> | |||||
# include <OpenGL/gl3ext.h> | |||||
# else | |||||
# include <OpenGL/gl.h> | |||||
# endif | |||||
#else | |||||
# ifndef DISTRHO_OS_WINDOWS | |||||
# define GL_GLEXT_PROTOTYPES | |||||
# endif | |||||
# ifndef __GLEW_H__ | |||||
# include <GL/gl.h> | |||||
# include <GL/glext.h> | |||||
# endif | |||||
#endif | |||||
// ----------------------------------------------------------------------- | |||||
// Missing OpenGL defines | |||||
#if defined(GL_BGR_EXT) && !defined(GL_BGR) | |||||
# define GL_BGR GL_BGR_EXT | |||||
#endif | |||||
#if defined(GL_BGRA_EXT) && !defined(GL_BGRA) | |||||
# define GL_BGRA GL_BGRA_EXT | |||||
#endif | |||||
#ifndef GL_CLAMP_TO_BORDER | |||||
# define GL_CLAMP_TO_BORDER 0x812D | |||||
#endif | |||||
// ----------------------------------------------------------------------- | |||||
// Fix OpenGL includes for Windows, based on glfw code (part 2) | |||||
#ifdef DGL_CALLBACK_DEFINED | |||||
# undef CALLBACK | |||||
# undef DGL_CALLBACK_DEFINED | |||||
#endif | |||||
#ifdef DGL_WINGDIAPI_DEFINED | |||||
# undef WINGDIAPI | |||||
# undef DGL_WINGDIAPI_DEFINED | |||||
#endif | |||||
#include "OpenGL-include.hpp" | |||||
START_NAMESPACE_DGL | START_NAMESPACE_DGL | ||||
@@ -120,6 +31,8 @@ START_NAMESPACE_DGL | |||||
*/ | */ | ||||
struct OpenGLGraphicsContext : GraphicsContext | struct OpenGLGraphicsContext : GraphicsContext | ||||
{ | { | ||||
#ifdef DGL_USE_OPENGL3 | |||||
#endif | |||||
}; | }; | ||||
// ----------------------------------------------------------------------- | // ----------------------------------------------------------------------- | ||||
@@ -305,4 +218,4 @@ typedef ImageBaseSwitch<OpenGLImage> OpenGLImageSwitch; | |||||
END_NAMESPACE_DGL | END_NAMESPACE_DGL | ||||
#endif | |||||
#endif // DGL_OPENGL_HPP_INCLUDED |