Thu, 15 Jan 2015 21:03:48 +0100
Integrate friendly tips from Tor colleagues to make (or not) 4.5 alpha 3;
This includes removal of overloaded (but unused) methods, and addition of
a overlooked call to DataStruct::SetData(nsISupports, uint32_t, bool.)
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 SkMesaGLContext_DEFINED
9 #define SkMesaGLContext_DEFINED
11 #include "SkGLContextHelper.h"
13 #if SK_MESA
15 class SkMesaGLContext : public SkGLContextHelper {
16 private:
17 typedef intptr_t Context;
19 public:
20 SkMesaGLContext();
22 virtual ~SkMesaGLContext();
24 virtual void makeCurrent() const SK_OVERRIDE;
25 virtual void swapBuffers() const SK_OVERRIDE;
27 class AutoContextRestore {
28 public:
29 AutoContextRestore();
30 ~AutoContextRestore();
32 private:
33 Context fOldContext;
34 GrGLint fOldWidth;
35 GrGLint fOldHeight;
36 GrGLint fOldFormat;
37 void* fOldImage;
38 };
40 protected:
41 virtual const GrGLInterface* createGLContext() SK_OVERRIDE;
42 virtual void destroyGLContext() SK_OVERRIDE;
44 private:
45 Context fContext;
46 GrGLubyte *fImage;
47 };
49 #endif
51 #endif