#ifndef SkNullGLContext_DEFINED
#define SkNullGLContext_DEFINED
-#include "SkGLContextHelper.h"
-
-class SK_API SkNullGLContext : public SkGLContextHelper {
+#include "SkGLContext.h"
+class SK_API SkNullGLContext : public SkGLContext {
public:
- SkNullGLContext() {};
-
+ virtual ~SkNullGLContext() SK_OVERRIDE;
virtual void makeCurrent() const SK_OVERRIDE {};
-
virtual void swapBuffers() const SK_OVERRIDE {};
-protected:
- virtual const GrGLInterface* createGLContext() SK_OVERRIDE;
-
- virtual void destroyGLContext() SK_OVERRIDE {};
+ static SkNullGLContext* Create(GrGLStandard forcedGpuAPI) {
+ if (kGLES_GrGLStandard == forcedGpuAPI) {
+ return NULL;
+ }
+ SkNullGLContext* ctx = SkNEW(SkNullGLContext);
+ if (!ctx->isValid()) {
+ SkDELETE(ctx);
+ return NULL;
+ }
+ return ctx;
+ }
+
+private:
+ SkNullGLContext();
};
#endif