GbmEglSurface(Card& card, GbmDevice& gdev, const EglState& egl, int width, int height) : card(card), egl(egl), m_width(width), m_height(height), bo_prev(0), bo_next(0) { gsurface = unique_ptr<GbmSurface>(new GbmSurface(gdev, width, height)); esurface = eglCreateWindowSurface(egl.display(), egl.config(), gsurface->handle(), NULL); FAIL_IF(esurface == EGL_NO_SURFACE, "failed to create egl surface"); }
EglSurface::EglSurface(const EglState &egl, void *native_window) : egl(egl) { esurface = eglCreateWindowSurface(egl.display(), egl.config(), (EGLNativeWindowType)native_window, NULL); FAIL_IF(esurface == EGL_NO_SURFACE, "failed to create egl surface"); }