Home | History | Annotate | Download | only in egl
      1 
      2 /*
      3  * Copyright 2014 Google Inc.
      4  *
      5  * Use of this source code is governed by a BSD-style license that can be
      6  * found in the LICENSE file.
      7  */
      8 #include "gl/GrGLInterface.h"
      9 #include "gl/GrGLAssembleInterface.h"
     10 #include "gl/GrGLUtil.h"
     11 
     12 #include <EGL/egl.h>
     13 #include <GLES2/gl2.h>
     14 
     15 static GrGLFuncPtr egl_get_gl_proc(void* ctx, const char name[]) {
     16     SkASSERT(nullptr == ctx);
     17     GrGLFuncPtr ptr = eglGetProcAddress(name);
     18     if (!ptr) {
     19         if (0 == strcmp("eglQueryString", name)) {
     20             return (GrGLFuncPtr)eglQueryString;
     21         } else if (0 == strcmp("eglGetCurrentDisplay", name)) {
     22             return (GrGLFuncPtr)eglGetCurrentDisplay;
     23         }
     24     }
     25     return ptr;
     26 }
     27 
     28 const GrGLInterface* GrGLCreateNativeInterface() {
     29     return GrGLAssembleInterface(nullptr, egl_get_gl_proc);
     30 }
     31