]> git.cworth.org Git - fips/blobdiff - eglwrap.c
stash
[fips] / eglwrap.c
index 497779ce3fd2048f03f518a98f51c70575c37d07..4c51c89d3fdbcf8186014f2030a5af7118d006eb 100644 (file)
--- a/eglwrap.c
+++ b/eglwrap.c
@@ -25,6 +25,8 @@
 
 #include <EGL/egl.h>
 
+#include "context.h"
+#include "eglwrap.h"
 #include "dlwrap.h"
 #include "metrics.h"
 
@@ -53,7 +55,7 @@
  * eglSwapBufers, eglGetProcAddress, and eglMakeCurrent), exist only
  * in libEGL.so.1.
  */
-static void *
+void *
 eglwrap_lookup (char *name)
 {
        const char *libegl_filename = "libEGL.so.1";
@@ -76,13 +78,11 @@ eglSwapBuffers (EGLDisplay dpy, EGLSurface surface)
 {
        EGLBoolean ret;
 
-       EGLWRAP_DEFER_WITH_RETURN (ret, eglSwapBuffers, dpy, surface);
-
-       metrics_counter_stop ();
+       context_end_frame_pre_swap ();
 
-       metrics_end_frame ();
+       EGLWRAP_DEFER_WITH_RETURN (ret, eglSwapBuffers, dpy, surface);
 
-       metrics_counter_start ();
+       context_end_frame_post_swap ();
 
        return ret;
 }
@@ -108,14 +108,11 @@ eglMakeCurrent (EGLDisplay display, EGLSurface draw, EGLSurface read,
 {
        EGLBoolean ret;
 
-       fips_dispatch_init (FIPS_API_EGL);
+       context_leave ();
 
        EGLWRAP_DEFER_WITH_RETURN (ret, eglMakeCurrent, display, draw, read, context);
 
-       metrics_info_init ();
-
-       metrics_set_current_op (METRICS_OP_SHADER + 0);
-       metrics_counter_start ();
+       context_enter (FIPS_API_EGL, context);
 
        return ret;
 }