OLD | NEW |
1 | 1 |
2 /* | 2 /* |
3 * Copyright 2011 Google Inc. | 3 * Copyright 2011 Google Inc. |
4 * | 4 * |
5 * Use of this source code is governed by a BSD-style license that can be | 5 * Use of this source code is governed by a BSD-style license that can be |
6 * found in the LICENSE file. | 6 * found in the LICENSE file. |
7 */ | 7 */ |
8 #ifndef SkMesaGLContext_DEFINED | 8 #ifndef SkMesaGLContext_DEFINED |
9 #define SkMesaGLContext_DEFINED | 9 #define SkMesaGLContext_DEFINED |
10 | 10 |
11 #include "SkGLContext.h" | 11 #include "SkGLContext.h" |
12 | 12 |
13 #if SK_MESA | 13 #if SK_MESA |
14 | 14 |
15 class SkMesaGLContext : public SkGLContext { | 15 class SkMesaGLContext : public SkGLContext { |
16 private: | 16 private: |
17 typedef intptr_t Context; | 17 typedef intptr_t Context; |
18 | 18 |
19 public: | 19 public: |
20 SkMesaGLContext(); | 20 virtual ~SkMesaGLContext() SK_OVERRIDE; |
21 | |
22 virtual ~SkMesaGLContext(); | |
23 | |
24 virtual void makeCurrent() const SK_OVERRIDE; | 21 virtual void makeCurrent() const SK_OVERRIDE; |
25 virtual void swapBuffers() const SK_OVERRIDE; | 22 virtual void swapBuffers() const SK_OVERRIDE; |
26 | 23 |
27 protected: | 24 static SkMesaGLContext* Create(GrGLStandard forcedGpuAPI) { |
28 virtual const GrGLInterface* createGLContext(GrGLStandard forcedGpuAPI) SK_O
VERRIDE; | 25 if (kGLES_GrGLStandard == forcedGpuAPI) { |
29 virtual void destroyGLContext() SK_OVERRIDE; | 26 return NULL; |
| 27 } |
| 28 SkMesaGLContext* ctx = SkNEW(SkMesaGLContext); |
| 29 if (!ctx->isValid()) { |
| 30 SkDELETE(ctx); |
| 31 return NULL; |
| 32 } |
| 33 return ctx; |
| 34 } |
30 | 35 |
31 private: | 36 private: |
| 37 SkMesaGLContext(); |
| 38 void destroyGLContext(); |
| 39 |
32 Context fContext; | 40 Context fContext; |
33 GrGLubyte *fImage; | 41 GrGLubyte *fImage; |
34 }; | 42 }; |
35 | 43 |
36 #endif | 44 #endif |
37 | 45 |
38 #endif | 46 #endif |
OLD | NEW |