gpu_finch_features.h 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. // Copyright 2017 The Chromium Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4. // This file defines all the public base::FeatureList features for the gpu
  5. // module.
  6. #ifndef GPU_CONFIG_GPU_FINCH_FEATURES_H_
  7. #define GPU_CONFIG_GPU_FINCH_FEATURES_H_
  8. #include "base/feature_list.h"
  9. #include "build/build_config.h"
  10. #include "gpu/gpu_export.h"
  11. namespace features {
  12. GPU_EXPORT extern const base::Feature kUseGles2ForOopR;
  13. // All features in alphabetical order. The features should be documented
  14. // alongside the definition of their values in the .cc file.
  15. #if BUILDFLAG(IS_ANDROID)
  16. GPU_EXPORT extern const base::Feature kAndroidSurfaceControl;
  17. GPU_EXPORT extern const base::Feature kWebViewSurfaceControl;
  18. GPU_EXPORT extern const base::Feature kAImageReader;
  19. GPU_EXPORT extern const base::Feature kWebViewVulkan;
  20. GPU_EXPORT extern const base::Feature kLimitAImageReaderMaxSizeToOne;
  21. GPU_EXPORT extern const base::Feature kWebViewThreadSafeMediaDefault;
  22. GPU_EXPORT extern const base::Feature kIncreaseBufferCountForHighFrameRate;
  23. #endif // BUILDFLAG(IS_ANDROID)
  24. GPU_EXPORT extern const base::Feature kDefaultEnableGpuRasterization;
  25. GPU_EXPORT extern const base::Feature kCanvasOopRasterization;
  26. GPU_EXPORT extern const base::Feature kEnableMSAAOnNewIntelGPUs;
  27. GPU_EXPORT extern const base::Feature kDefaultEnableANGLEValidation;
  28. GPU_EXPORT extern const base::Feature kCanvasContextLostInBackground;
  29. #if BUILDFLAG(IS_WIN)
  30. GPU_EXPORT extern const base::Feature kGpuProcessHighPriorityWin;
  31. GPU_EXPORT extern const base::Feature kDisableVideoOverlayIfMoving;
  32. #endif
  33. #if BUILDFLAG(IS_MAC)
  34. GPU_EXPORT extern const base::Feature kMetal;
  35. #if defined(ARCH_CPU_ARM64)
  36. GPU_EXPORT extern const base::Feature kDisableFlushWorkaroundForMacCrash;
  37. #endif
  38. #endif
  39. GPU_EXPORT extern const base::Feature kSharedImageManager;
  40. GPU_EXPORT extern const base::Feature kVaapiJpegImageDecodeAcceleration;
  41. GPU_EXPORT extern const base::Feature kVaapiWebPImageDecodeAcceleration;
  42. GPU_EXPORT extern const base::Feature kVulkan;
  43. GPU_EXPORT extern const base::Feature kSkiaDawn;
  44. GPU_EXPORT extern const base::Feature kEnableGrShaderCacheForVulkan;
  45. GPU_EXPORT extern const base::Feature kEnableVkPipelineCache;
  46. GPU_EXPORT extern const base::Feature kReduceOpsTaskSplitting;
  47. GPU_EXPORT extern const base::Feature kNoDiscardableMemoryForGpuDecodePath;
  48. GPU_EXPORT extern const base::Feature kEnableDrDc;
  49. GPU_EXPORT extern const base::Feature kForceGpuMainThreadToNormalPriorityDrDc;
  50. #if BUILDFLAG(IS_ANDROID)
  51. // This flag is use additionally with kEnableDrDc to enable the feature for
  52. // vulkan enabled android devices.
  53. GPU_EXPORT extern const base::Feature kEnableDrDcVulkan;
  54. #endif // BUILDFLAG(IS_ANDROID)
  55. GPU_EXPORT extern const base::Feature kWebGPUService;
  56. GPU_EXPORT extern const base::Feature kIncreasedCmdBufferParseSlice;
  57. GPU_EXPORT bool UseGles2ForOopR();
  58. GPU_EXPORT bool IsUsingVulkan();
  59. GPU_EXPORT bool IsDrDcEnabled();
  60. GPU_EXPORT bool IsGpuMainThreadForcedToNormalPriorityDrDc();
  61. GPU_EXPORT bool NeedThreadSafeAndroidMedia();
  62. GPU_EXPORT bool IsANGLEValidationEnabled();
  63. #if BUILDFLAG(IS_ANDROID)
  64. GPU_EXPORT bool IsAImageReaderEnabled();
  65. GPU_EXPORT bool IsAndroidSurfaceControlEnabled();
  66. GPU_EXPORT bool LimitAImageReaderMaxSizeToOne();
  67. GPU_EXPORT bool IncreaseBufferCountForHighFrameRate();
  68. GPU_EXPORT bool IncreaseBufferCountForWebViewOverlays();
  69. #endif
  70. } // namespace features
  71. #endif // GPU_CONFIG_GPU_FINCH_FEATURES_H_