X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=glimports.hpp;h=773d50f4914a23c3e6a07a7e743dc01f5cd04888;hb=b64b0df0814a5e7f029ad5465ee71ea5c045c8f3;hp=9c5492ae0165c97ba8c73419a761ddeeaa78273b;hpb=0633bdfcc370f57992be9cac76b11b26df409f24;p=apitrace diff --git a/glimports.hpp b/glimports.hpp index 9c5492a..773d50f 100644 --- a/glimports.hpp +++ b/glimports.hpp @@ -23,26 +23,100 @@ * **************************************************************************/ +/* + * Central place for all GL includes, and respective OS dependent headers. + */ + #ifndef _GLIMPORTS_HPP_ #define _GLIMPORTS_HPP_ -#ifdef WIN32 -#ifndef WIN32_LEAN_AND_MEAN -#define WIN32_LEAN_AND_MEAN 1 + +#if defined(_WIN32) +# ifndef WIN32_LEAN_AND_MEAN +# define WIN32_LEAN_AND_MEAN 1 +# endif +# include +#elif defined(__APPLE__) +#elif defined(HAVE_X11) +# include +#endif /* !_WIN32 */ + + +#include +#include + + +// GL_NVX_gpu_memory_info +#define GL_GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX 0x9047 +#define GL_GPU_MEMORY_INFO_TOTAL_AVAILABLE_MEMORY_NVX 0x9048 +#define GL_GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX 0x9049 +#define GL_GPU_MEMORY_INFO_EVICTION_COUNT_NVX 0x904A +#define GL_GPU_MEMORY_INFO_EVICTED_MEMORY_NVX 0x904B + + +#if defined(_WIN32) + +#include + +#ifndef PFD_SUPPORT_DIRECTDRAW +#define PFD_SUPPORT_DIRECTDRAW 0x00002000 #endif -#include +#ifndef PFD_SUPPORT_COMPOSITION +#define PFD_SUPPORT_COMPOSITION 0x00008000 #endif -#include +#ifndef WGL_SWAPMULTIPLE_MAX + +extern "C" +typedef struct _WGLSWAP +{ + HDC hdc; + UINT uiFlags; +} WGLSWAP, *PWGLSWAP, FAR *LPWGLSWAP; + +#define WGL_SWAPMULTIPLE_MAX 16 -#include "glext.h" +#endif /* !WGL_SWAPMULTIPLE_MAX */ -#ifndef GL_TEXTURE_INDEX_SIZE_EXT -#define GL_TEXTURE_INDEX_SIZE_EXT 0x80ED +#elif defined(__APPLE__) + +#include +#include +#include + +#ifndef CGL_VERSION_1_3 +#define kCGLPFAOpenGLProfile 99 +#define kCGLOGLPVersion_Legacy 0x1000 +#define kCGLOGLPVersion_3_2_Core 0x3200 +#endif + +extern "C" { + +// From http://www.opensource.apple.com/source/gdb/gdb-954/libcheckpoint/cpcg.c +typedef void * CGSConnectionID; +typedef int CGSWindowID; +typedef int CGSSurfaceID; + +CGLError CGLSetSurface(CGLContextObj ctx, CGSConnectionID cid, CGSWindowID wid, CGSSurfaceID sid); +CGLError CGLGetSurface(CGLContextObj ctx, CGSConnectionID* cid, CGSWindowID* wid, CGSSurfaceID* sid); +CGLError CGLUpdateContext(CGLContextObj ctx); + +} + +#else + +#ifdef HAVE_X11 +#include +#include #endif -#ifdef WIN32 -#include "wglext.h" -#endif /* WIN32 */ +/* Prevent collision with trace::Bool */ +#undef Bool + +#endif + + +#include "eglimports.hpp" + #endif /* _GLIMPORTS_HPP_ */