OLD | NEW |
1 | 1 |
2 /* | 2 /* |
3 * Copyright 2012 Google Inc. | 3 * Copyright 2012 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 | 8 |
9 | 9 |
10 #include "gl/GrGLInterface.h" | 10 #include "gl/GrGLInterface.h" |
(...skipping 801 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
812 // contexts. The natural way to do this is to have multiple debug | 812 // contexts. The natural way to do this is to have multiple debug |
813 // interfaces. Each of which represents a separate context. The | 813 // interfaces. Each of which represents a separate context. The |
814 // static ID count would still uniquify IDs across all of them. | 814 // static ID count would still uniquify IDs across all of them. |
815 // The problem then is that we couldn't treat the debug GL | 815 // The problem then is that we couldn't treat the debug GL |
816 // interface as a singleton (since there would be one for each | 816 // interface as a singleton (since there would be one for each |
817 // context). | 817 // context). |
818 // | 818 // |
819 // The solution to this is probably to alter SkDebugGlContext's | 819 // The solution to this is probably to alter SkDebugGlContext's |
820 // "makeCurrent" method to make a call like "makeCurrent(this)" to | 820 // "makeCurrent" method to make a call like "makeCurrent(this)" to |
821 // the debug GL interface (assuming that the application will create | 821 // the debug GL interface (assuming that the application will create |
822 // multiple SkGLContext's) to let it switch between the active | 822 // multiple SkGLContextHelper's) to let it switch between the active |
823 // context. Everything in the GrDebugGL object would then need to be | 823 // context. Everything in the GrDebugGL object would then need to be |
824 // moved to a GrContextObj and the GrDebugGL object would just switch | 824 // moved to a GrContextObj and the GrDebugGL object would just switch |
825 // between them. Note that this approach would also require that | 825 // between them. Note that this approach would also require that |
826 // SkDebugGLContext wrap an arbitrary other context | 826 // SkDebugGLContext wrap an arbitrary other context |
827 // and then pass the wrapped interface to the debug GL interface. | 827 // and then pass the wrapped interface to the debug GL interface. |
828 | 828 |
829 protected: | 829 protected: |
830 private: | 830 private: |
831 | 831 |
832 SkAutoTUnref<GrGLInterface> fWrapped; | 832 SkAutoTUnref<GrGLInterface> fWrapped; |
(...skipping 140 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
973 functions->fMatrixLoadIdentity = noOpGLMatrixLoadIdentity; | 973 functions->fMatrixLoadIdentity = noOpGLMatrixLoadIdentity; |
974 | 974 |
975 functions->fBindFragDataLocationIndexed = | 975 functions->fBindFragDataLocationIndexed = |
976 noOpGLBindFragDataLocationIndexed; | 976 noOpGLBindFragDataLocationIndexed; |
977 | 977 |
978 interface->fExtensions.init(kGL_GrGLStandard, functions->fGetString, functio
ns->fGetStringi, | 978 interface->fExtensions.init(kGL_GrGLStandard, functions->fGetString, functio
ns->fGetStringi, |
979 functions->fGetIntegerv); | 979 functions->fGetIntegerv); |
980 | 980 |
981 return interface; | 981 return interface; |
982 } | 982 } |
OLD | NEW |