diff --git a/include/GL/eglew.h b/include/GL/eglew.h index dfe26da..246380c 100644 --- a/include/GL/eglew.h +++ b/include/GL/eglew.h @@ -892,6 +892,19 @@ typedef EGLBoolean ( * PFNEGLQUERYDEVICESEXTPROC) (EGLint max_devices, EGLDevice #endif /* EGL_EXT_device_openwf */ +/* ---------------------- EGL_EXT_device_persistent_id --------------------- */ + +#ifndef EGL_EXT_device_persistent_id +#define EGL_EXT_device_persistent_id 1 + +#define EGL_DEVICE_UUID_EXT 0x335C +#define EGL_DRIVER_UUID_EXT 0x335D +#define EGL_DRIVER_NAME_EXT 0x335E + +#define EGLEW_EXT_device_persistent_id EGLEW_GET_VAR(__EGLEW_EXT_device_persistent_id) + +#endif /* EGL_EXT_device_persistent_id */ + /* -------------------------- EGL_EXT_device_query ------------------------- */ #ifndef EGL_EXT_device_query @@ -2987,6 +3000,7 @@ EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_device_base; EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_device_drm; EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_device_enumeration; EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_device_openwf; +EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_device_persistent_id; EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_device_query; EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_device_query_name; EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_gl_colorspace_bt2020_linear; diff --git a/src/glew.c b/src/glew.c index 22ff7cc..41f795c 100644 --- a/src/glew.c +++ b/src/glew.c @@ -19726,6 +19726,7 @@ GLboolean __EGLEW_EXT_device_base = GL_FALSE; GLboolean __EGLEW_EXT_device_drm = GL_FALSE; GLboolean __EGLEW_EXT_device_enumeration = GL_FALSE; GLboolean __EGLEW_EXT_device_openwf = GL_FALSE; +GLboolean __EGLEW_EXT_device_persistent_id = GL_FALSE; GLboolean __EGLEW_EXT_device_query = GL_FALSE; GLboolean __EGLEW_EXT_device_query_name = GL_FALSE; GLboolean __EGLEW_EXT_gl_colorspace_bt2020_linear = GL_FALSE; @@ -20848,6 +20849,9 @@ GLenum eglewInit (EGLDisplay display) #ifdef EGL_EXT_device_openwf EGLEW_EXT_device_openwf = _glewSearchExtension("EGL_EXT_device_openwf", extStart, extEnd); #endif /* EGL_EXT_device_openwf */ +#ifdef EGL_EXT_device_persistent_id + EGLEW_EXT_device_persistent_id = _glewSearchExtension("EGL_EXT_device_persistent_id", extStart, extEnd); +#endif /* EGL_EXT_device_persistent_id */ #ifdef EGL_EXT_device_query EGLEW_EXT_device_query = _glewSearchExtension("EGL_EXT_device_query", extStart, extEnd); if (glewExperimental || EGLEW_EXT_device_query) EGLEW_EXT_device_query = !_glewInit_EGL_EXT_device_query(); @@ -31396,6 +31400,13 @@ GLboolean eglewIsSupported (const char* name) continue; } #endif +#ifdef EGL_EXT_device_persistent_id + if (_glewStrSame3(&pos, &len, (const GLubyte*)"device_persistent_id", 20)) + { + ret = EGLEW_EXT_device_persistent_id; + continue; + } +#endif #ifdef EGL_EXT_device_query if (_glewStrSame3(&pos, &len, (const GLubyte*)"device_query", 12)) { diff --git a/src/glewinfo.c b/src/glewinfo.c index 88bb698..c2633be 100644 --- a/src/glewinfo.c +++ b/src/glewinfo.c @@ -12167,6 +12167,15 @@ static void _glewInfo_EGL_EXT_device_openwf (void) #endif /* EGL_EXT_device_openwf */ +#ifdef EGL_EXT_device_persistent_id + +static void _glewInfo_EGL_EXT_device_persistent_id (void) +{ + glewPrintExt("EGL_EXT_device_persistent_id", EGLEW_EXT_device_persistent_id, eglewIsSupported("EGL_EXT_device_persistent_id"), eglewGetExtension("EGL_EXT_device_persistent_id")); +} + +#endif /* EGL_EXT_device_persistent_id */ + #ifdef EGL_EXT_device_query static void _glewInfo_EGL_EXT_device_query (void) @@ -18255,6 +18264,9 @@ static void eglewInfo () #ifdef EGL_EXT_device_openwf _glewInfo_EGL_EXT_device_openwf(); #endif /* EGL_EXT_device_openwf */ +#ifdef EGL_EXT_device_persistent_id + _glewInfo_EGL_EXT_device_persistent_id(); +#endif /* EGL_EXT_device_persistent_id */ #ifdef EGL_EXT_device_query _glewInfo_EGL_EXT_device_query(); #endif /* EGL_EXT_device_query */