Home | History | Annotate | Download | only in gl
      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