1 2 /* 3 * Copyright 2011 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 #ifndef SkNullGLContext_DEFINED 9 #define SkNullGLContext_DEFINED 10 11 #include "gl/SkGLContext.h" 12 13 class SK_API SkNullGLContext : public SkGLContext { 14 public: 15 ~SkNullGLContext() override; 16 17 static SkNullGLContext* Create(); 18 // FIXME: remove once Chromium has been updated. 19 static SkNullGLContext* Create(GrGLStandard forcedAPI) { 20 SkASSERT(forcedAPI == kNone_GrGLStandard); 21 (void)forcedAPI; return Create(); 22 } 23 24 class ContextState; 25 26 private: 27 SkNullGLContext(); 28 29 void onPlatformMakeCurrent() const override; 30 void onPlatformSwapBuffers() const override {} 31 GrGLFuncPtr onPlatformGetProcAddress(const char*) const override { return NULL; } 32 33 ContextState* fState; 34 }; 35 36 #endif 37