| /* |
| * Copyright 2014 Google Inc. |
| * |
| * Use of this source code is governed by a BSD-style license that can be |
| * found in the LICENSE file. |
| */ |
| |
| #ifndef DMGpuSupport_DEFINED |
| #define DMGpuSupport_DEFINED |
| |
| // Provides Ganesh to DM, |
| // or if it's not available, fakes it enough so most code doesn't have to know that. |
| |
| #include "SkSurface.h" |
| |
| // This should be safe to include even in no-gpu builds. Include by relative path so it |
| // can be found in non-gpu builds. |
| #include "../include/gpu/GrContextOptions.h" |
| |
| #if SK_SUPPORT_GPU |
| |
| // Ganesh is available. Yippee! |
| |
| # include "GrContext.h" |
| # include "GrContextFactory.h" |
| |
| namespace DM { |
| |
| static const bool kGPUDisabled = false; |
| |
| } // namespace DM |
| |
| #else// !SK_SUPPORT_GPU |
| |
| // Ganesh is not available. Fake it. |
| |
| enum GrGLStandard { |
| kNone_GrGLStandard, |
| kGL_GrGLStandard, |
| kGLES_GrGLStandard |
| }; |
| static const int kGrGLStandardCnt = 3; |
| |
| class GrContext { |
| public: |
| void dumpCacheStats(SkString*) const {} |
| void dumpGpuStats(SkString*) const {} |
| }; |
| |
| class SkCommandLineConfigGpu { |
| public: |
| enum class SurfType; |
| }; |
| |
| namespace sk_gpu_test { |
| class GrContextFactory { |
| public: |
| GrContextFactory() {} |
| explicit GrContextFactory(const GrContextOptions&) {} |
| |
| typedef int ContextType; |
| |
| static const ContextType kANGLE_ContextType = 0, |
| kANGLE_GL_ContextType = 0, |
| kCommandBuffer_ContextType = 0, |
| kDebugGL_ContextType = 0, |
| kNVPR_ContextType = 0, |
| kNativeGL_ContextType = 0, |
| kGL_ContextType = 0, |
| kGLES_ContextType = 0, |
| kNullGL_ContextType = 0, |
| kVulkan_ContextType = 0, |
| kMetal_ContextType = 0; |
| static const int kContextTypeCnt = 1; |
| enum class ContextOverrides {}; |
| void destroyContexts() {} |
| |
| void abandonContexts() {} |
| |
| void releaseResourcesAndAbandonContexts() {} |
| }; |
| } // namespace sk_gpu_test |
| |
| namespace DM { |
| |
| static const bool kGPUDisabled = true; |
| |
| } // namespace DM |
| |
| #endif//SK_SUPPORT_GPU |
| |
| #endif//DMGpuSupport_DEFINED |