/* * Copyright 2017 Google Inc. * * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. */ #include "include/core/SkRefCnt.h" #include "include/gpu/GrContext.h" #include "include/gpu/gl/GrGLFunctions.h" #include "include/gpu/gl/GrGLInterface.h" #include "tools/gpu/gl/GLTestContext.h" #include #include #include // create_grcontext implementation for EGL. sk_sp create_grcontext(std::ostringstream& driverinfo, std::unique_ptr* glContext) { // We are leaking tc, but that's OK because fiddle is a short lived proces. glContext->reset(sk_gpu_test::CreatePlatformGLTestContext(kGLES_GrGLStandard)); if (!glContext) { return nullptr; } (*glContext)->makeCurrent(); sk_sp result = (*glContext)->makeGrContext(GrContextOptions()); if (!result) { glContext->reset(); return nullptr; } driverinfo << "GL Version: " << glGetString(GL_VERSION) << "\n"; driverinfo << "GL Vendor: " << glGetString(GL_VENDOR) << "\n"; driverinfo << "GL Renderer: " << glGetString(GL_RENDERER) << "\n"; driverinfo << "GL Extensions: " << glGetString(GL_EXTENSIONS) << "\n"; return result; }