summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--o3d/core/cross/gles2/renderer_gles2.h6
-rw-r--r--o3d/core/cross/renderer_test.cc5
2 files changed, 11 insertions, 0 deletions
diff --git a/o3d/core/cross/gles2/renderer_gles2.h b/o3d/core/cross/gles2/renderer_gles2.h
index 6036c73..30ca3ed 100644
--- a/o3d/core/cross/gles2/renderer_gles2.h
+++ b/o3d/core/cross/gles2/renderer_gles2.h
@@ -182,6 +182,12 @@ class RendererGLES2 : public Renderer {
// Programs the helper constants into the hardware.
void UpdateDxClippingUniform(GLint location);
+#if defined(GLES2_BACKEND_DESKTOP_GL)
+ inline GLXContext glx_context() const { return context_; }
+#elif defined(GLES2_BACKEND_NATIVE_GLES2)
+ inline EGLContext egl_context() const { return egl_context_; }
+#endif
+
protected:
// Keep the constructor protected so only factory methods can create
// renderers.
diff --git a/o3d/core/cross/renderer_test.cc b/o3d/core/cross/renderer_test.cc
index 427777f..a73ec2f 100644
--- a/o3d/core/cross/renderer_test.cc
+++ b/o3d/core/cross/renderer_test.cc
@@ -105,6 +105,11 @@ TEST_F(RendererTest, InitAndDestroyRenderer) {
// check that the renderer no longer has a Cg Context.
EXPECT_FALSE(gl_renderer->cg_context() != NULL);
#elif defined(RENDERER_GLES2)
+#if defined(GLES2_BACKEND_DESKTOP_GL)
+ EXPECT_FALSE(gles2_renderer->glx_context() != NULL);
+#elif defined(GLES2_BACKEND_NATIVE_GLES2)
+ EXPECT_FALSE(gles2_renderer->egl_context() != NULL);
+#endif
#endif
}