Add robustness extensions to GL wrappers
authorMika Isojärvi <misojarvi@google.com>
Thu, 10 Mar 2016 21:35:20 +0000 (13:35 -0800)
committerMika Isojärvi <misojarvi@google.com>
Thu, 10 Mar 2016 21:35:20 +0000 (13:35 -0800)
Change-Id: I13b7d016037aa991bf6b9c50bbb2580797baf415

framework/opengl/wrapper/glwEnums.inl
framework/opengl/wrapper/glwInitExtES.inl
framework/opengl/wrapper/glwInitExtGL.inl
scripts/opengl/src_util.py

index 8d6fc09..452c9de 100644 (file)
 #define GL_OUT_OF_MEMORY                                                                                               0x0505
 #define GL_INVALID_FRAMEBUFFER_OPERATION                                                               0x0506
 #define GL_CONTEXT_LOST                                                                                                        0x0507
+#define GL_CONTEXT_LOST_KHR                                                                                            0x0507
 #define GL_CW                                                                                                                  0x0900
 #define GL_CCW                                                                                                                 0x0901
 #define GL_POINT_SIZE                                                                                                  0x0B11
 #define GL_DEBUG_TYPE_OTHER                                                                                            0x8251
 #define GL_DEBUG_TYPE_OTHER_KHR                                                                                        0x8251
 #define GL_LOSE_CONTEXT_ON_RESET                                                                               0x8252
+#define GL_LOSE_CONTEXT_ON_RESET_EXT                                                                   0x8252
+#define GL_LOSE_CONTEXT_ON_RESET_KHR                                                                   0x8252
 #define GL_GUILTY_CONTEXT_RESET                                                                                        0x8253
+#define GL_GUILTY_CONTEXT_RESET_EXT                                                                            0x8253
+#define GL_GUILTY_CONTEXT_RESET_KHR                                                                            0x8253
 #define GL_INNOCENT_CONTEXT_RESET                                                                              0x8254
+#define GL_INNOCENT_CONTEXT_RESET_EXT                                                                  0x8254
+#define GL_INNOCENT_CONTEXT_RESET_KHR                                                                  0x8254
 #define GL_UNKNOWN_CONTEXT_RESET                                                                               0x8255
+#define GL_UNKNOWN_CONTEXT_RESET_EXT                                                                   0x8255
+#define GL_UNKNOWN_CONTEXT_RESET_KHR                                                                   0x8255
 #define GL_RESET_NOTIFICATION_STRATEGY                                                                 0x8256
+#define GL_RESET_NOTIFICATION_STRATEGY_EXT                                                             0x8256
+#define GL_RESET_NOTIFICATION_STRATEGY_KHR                                                             0x8256
 #define GL_PROGRAM_BINARY_RETRIEVABLE_HINT                                                             0x8257
 #define GL_PROGRAM_SEPARABLE                                                                                   0x8258
 #define GL_ACTIVE_PROGRAM                                                                                              0x8259
 #define GL_UNDEFINED_VERTEX                                                                                            0x8260
 #define GL_UNDEFINED_VERTEX_EXT                                                                                        0x8260
 #define GL_NO_RESET_NOTIFICATION                                                                               0x8261
+#define GL_NO_RESET_NOTIFICATION_EXT                                                                   0x8261
+#define GL_NO_RESET_NOTIFICATION_KHR                                                                   0x8261
 #define GL_MAX_COMPUTE_SHARED_MEMORY_SIZE                                                              0x8262
 #define GL_MAX_COMPUTE_UNIFORM_COMPONENTS                                                              0x8263
 #define GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS                                                  0x8264
 #define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER                  0x90ED
 #define GL_DISPATCH_INDIRECT_BUFFER                                                                            0x90EE
 #define GL_DISPATCH_INDIRECT_BUFFER_BINDING                                                            0x90EF
+#define GL_CONTEXT_ROBUST_ACCESS_EXT                                                                   0x90F3
+#define GL_CONTEXT_ROBUST_ACCESS_KHR                                                                   0x90F3
 #define GL_TEXTURE_2D_MULTISAMPLE                                                                              0x9100
 #define GL_PROXY_TEXTURE_2D_MULTISAMPLE                                                                        0x9101
 #define GL_TEXTURE_2D_MULTISAMPLE_ARRAY                                                                        0x9102
index 26b72da..75a3385 100644 (file)
@@ -96,3 +96,20 @@ if (de::contains(extSet, "GL_EXT_debug_marker"))
        gl->popGroupMarkerEXT           = (glPopGroupMarkerEXTFunc)             loader->get("glPopGroupMarkerEXT");
        gl->pushGroupMarkerEXT          = (glPushGroupMarkerEXTFunc)    loader->get("glPushGroupMarkerEXT");
 }
+
+if (de::contains(extSet, "GL_EXT_robustness"))
+{
+       gl->getGraphicsResetStatus      = (glGetGraphicsResetStatusFunc)        loader->get("glGetGraphicsResetStatusEXT");
+       gl->getnUniformfv                       = (glGetnUniformfvFunc)                         loader->get("glGetnUniformfvEXT");
+       gl->getnUniformiv                       = (glGetnUniformivFunc)                         loader->get("glGetnUniformivEXT");
+       gl->readnPixels                         = (glReadnPixelsFunc)                           loader->get("glReadnPixelsEXT");
+}
+
+if (de::contains(extSet, "GL_KHR_robustness"))
+{
+       gl->getGraphicsResetStatus      = (glGetGraphicsResetStatusFunc)        loader->get("glGetGraphicsResetStatusKHR");
+       gl->getnUniformfv                       = (glGetnUniformfvFunc)                         loader->get("glGetnUniformfvKHR");
+       gl->getnUniformiv                       = (glGetnUniformivFunc)                         loader->get("glGetnUniformivKHR");
+       gl->getnUniformuiv                      = (glGetnUniformuivFunc)                        loader->get("glGetnUniformuivKHR");
+       gl->readnPixels                         = (glReadnPixelsFunc)                           loader->get("glReadnPixelsKHR");
+}
index 341cc24..d044fa2 100644 (file)
@@ -17,3 +17,12 @@ if (de::contains(extSet, "GL_KHR_debug"))
        gl->popDebugGroup                       = (glPopDebugGroupFunc)                 loader->get("glPopDebugGroup");
        gl->pushDebugGroup                      = (glPushDebugGroupFunc)                loader->get("glPushDebugGroup");
 }
+
+if (de::contains(extSet, "GL_KHR_robustness"))
+{
+       gl->getGraphicsResetStatus      = (glGetGraphicsResetStatusFunc)        loader->get("glGetGraphicsResetStatus");
+       gl->getnUniformfv                       = (glGetnUniformfvFunc)                         loader->get("glGetnUniformfv");
+       gl->getnUniformiv                       = (glGetnUniformivFunc)                         loader->get("glGetnUniformiv");
+       gl->getnUniformuiv                      = (glGetnUniformuivFunc)                        loader->get("glGetnUniformuiv");
+       gl->readnPixels                         = (glReadnPixelsFunc)                           loader->get("glReadnPixels");
+}
index 7a44459..6fe4c46 100644 (file)
@@ -65,6 +65,8 @@ EXTENSIONS                    = [
        'GL_EXT_texture_sRGB_R8',
        'GL_EXT_texture_sRGB_RG8',
        'GL_EXT_debug_marker',
+       'GL_EXT_robustness',
+       'GL_KHR_robustness',
 ]
 
 def getGLRegistry ():