11/*
22** The OpenGL Extension Wrangler Library
3+ ** Copyright (C) 2008-2015, Nigel Stewart <nigels[]users sourceforge net>
34** Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
45** Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
56** Copyright (C) 2002, Lev Povalahev
@@ -182,6 +183,19 @@ typedef BOOL (WINAPI * PFNWGLSAVEBUFFERREGIONARBPROC) (HANDLE hRegion, int x, in
182183
183184#endif /* WGL_ARB_buffer_region */
184185
186+ /* --------------------- WGL_ARB_context_flush_control --------------------- */
187+
188+ #ifndef WGL_ARB_context_flush_control
189+ #define WGL_ARB_context_flush_control 1
190+
191+ #define WGL_CONTEXT_RELEASE_BEHAVIOR_NONE_ARB 0x0000
192+ #define WGL_CONTEXT_RELEASE_BEHAVIOR_ARB 0x2097
193+ #define WGL_CONTEXT_RELEASE_BEHAVIOR_FLUSH_ARB 0x2098
194+
195+ #define WGLEW_ARB_context_flush_control WGLEW_GET_VAR(__WGLEW_ARB_context_flush_control)
196+
197+ #endif /* WGL_ARB_context_flush_control */
198+
185199/* ------------------------- WGL_ARB_create_context ------------------------ */
186200
187201#ifndef WGL_ARB_create_context
@@ -928,6 +942,19 @@ typedef BOOL (WINAPI * PFNWGLCOPYIMAGESUBDATANVPROC) (HGLRC hSrcRC, GLuint srcNa
928942
929943#endif /* WGL_NV_copy_image */
930944
945+ /* ------------------------ WGL_NV_delay_before_swap ----------------------- */
946+
947+ #ifndef WGL_NV_delay_before_swap
948+ #define WGL_NV_delay_before_swap 1
949+
950+ typedef BOOL (WINAPI * PFNWGLDELAYBEFORESWAPNVPROC ) (HDC hDC , GLfloat seconds );
951+
952+ #define wglDelayBeforeSwapNV WGLEW_GET_FUN(__wglewDelayBeforeSwapNV)
953+
954+ #define WGLEW_NV_delay_before_swap WGLEW_GET_VAR(__WGLEW_NV_delay_before_swap)
955+
956+ #endif /* WGL_NV_delay_before_swap */
957+
931958/* -------------------------- WGL_NV_float_buffer -------------------------- */
932959
933960#ifndef WGL_NV_float_buffer
@@ -1170,18 +1197,8 @@ typedef BOOL (WINAPI * PFNWGLWAITFORSBCOMLPROC) (HDC hdc, INT64 target_sbc, INT6
11701197
11711198/* ------------------------------------------------------------------------- */
11721199
1173- #ifdef GLEW_MX
1174- #define WGLEW_FUN_EXPORT
1175- #define WGLEW_VAR_EXPORT
1176- #else
11771200#define WGLEW_FUN_EXPORT GLEW_FUN_EXPORT
11781201#define WGLEW_VAR_EXPORT GLEW_VAR_EXPORT
1179- #endif /* GLEW_MX */
1180-
1181- #ifdef GLEW_MX
1182- struct WGLEWContextStruct
1183- {
1184- #endif /* GLEW_MX */
11851202
11861203WGLEW_FUN_EXPORT PFNWGLSETSTEREOEMITTERSTATE3DLPROC __wglewSetStereoEmitterState3DL ;
11871204
@@ -1291,6 +1308,8 @@ WGLEW_FUN_EXPORT PFNWGLDXUNREGISTEROBJECTNVPROC __wglewDXUnregisterObjectNV;
12911308
12921309WGLEW_FUN_EXPORT PFNWGLCOPYIMAGESUBDATANVPROC __wglewCopyImageSubDataNV ;
12931310
1311+ WGLEW_FUN_EXPORT PFNWGLDELAYBEFORESWAPNVPROC __wglewDelayBeforeSwapNV ;
1312+
12941313WGLEW_FUN_EXPORT PFNWGLCREATEAFFINITYDCNVPROC __wglewCreateAffinityDCNV ;
12951314WGLEW_FUN_EXPORT PFNWGLDELETEDCNVPROC __wglewDeleteDCNV ;
12961315WGLEW_FUN_EXPORT PFNWGLENUMGPUDEVICESNVPROC __wglewEnumGpuDevicesNV ;
@@ -1334,6 +1353,7 @@ WGLEW_VAR_EXPORT GLboolean __WGLEW_3DFX_multisample;
13341353WGLEW_VAR_EXPORT GLboolean __WGLEW_3DL_stereo_control ;
13351354WGLEW_VAR_EXPORT GLboolean __WGLEW_AMD_gpu_association ;
13361355WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_buffer_region ;
1356+ WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_context_flush_control ;
13371357WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_create_context ;
13381358WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_create_context_profile ;
13391359WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_create_context_robustness ;
@@ -1371,6 +1391,7 @@ WGLEW_VAR_EXPORT GLboolean __WGLEW_I3D_swap_frame_usage;
13711391WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_DX_interop ;
13721392WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_DX_interop2 ;
13731393WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_copy_image ;
1394+ WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_delay_before_swap ;
13741395WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_float_buffer ;
13751396WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_gpu_affinity ;
13761397WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_multisample_coverage ;
@@ -1382,33 +1403,18 @@ WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_vertex_array_range;
13821403WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_video_capture ;
13831404WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_video_output ;
13841405WGLEW_VAR_EXPORT GLboolean __WGLEW_OML_sync_control ;
1385-
1386- #ifdef GLEW_MX
1387- }; /* WGLEWContextStruct */
1388- #endif /* GLEW_MX */
1389-
13901406/* ------------------------------------------------------------------------- */
13911407
1392- #ifdef GLEW_MX
1393-
1394- typedef struct WGLEWContextStruct WGLEWContext ;
1395- GLEWAPI GLenum GLEWAPIENTRY wglewContextInit (WGLEWContext * ctx );
1396- GLEWAPI GLboolean GLEWAPIENTRY wglewContextIsSupported (const WGLEWContext * ctx , const char * name );
1397-
1398- #define wglewInit () wglewContextInit(wglewGetContext())
1399- #define wglewIsSupported (x ) wglewContextIsSupported(wglewGetContext(), x)
1400-
1401- #define WGLEW_GET_VAR (x ) (*(const GLboolean*)&(wglewGetContext()->x))
1402- #define WGLEW_GET_FUN (x ) wglewGetContext()->x
1403-
1404- #else /* GLEW_MX */
1408+ GLEWAPI GLenum GLEWAPIENTRY wglewInit ();
1409+ GLEWAPI GLboolean GLEWAPIENTRY wglewIsSupported (const char * name );
14051410
1411+ #ifndef WGLEW_GET_VAR
14061412#define WGLEW_GET_VAR (x ) (*(const GLboolean*)&x)
1407- #define WGLEW_GET_FUN (x ) x
1408-
1409- GLEWAPI GLboolean GLEWAPIENTRY wglewIsSupported (const char * name );
1413+ #endif
14101414
1411- #endif /* GLEW_MX */
1415+ #ifndef WGLEW_GET_FUN
1416+ #define WGLEW_GET_FUN (x ) x
1417+ #endif
14121418
14131419GLEWAPI GLboolean GLEWAPIENTRY wglewGetExtension (const char * name );
14141420
0 commit comments