1 // Copyright 2014 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 5 #ifndef ASH_GPU_SUPPORT_H_ 6 #define ASH_GPU_SUPPORT_H_ 7 8 #include <list> 9 10 #include "ash/ash_export.h" 11 #include "base/callback_forward.h" 12 #include "base/process/process.h" 13 14 namespace ash { 15 16 // An interface to allow use of content::GpuDataManager to be injected in 17 // configurations that permit a dependency on content. 18 class ASH_EXPORT GPUSupport { 19 public: 20 typedef base::Callback<void(const std::list<base::ProcessHandle>&)> 21 GetGpuProcessHandlesCallback; 22 ~GPUSupport()23 virtual ~GPUSupport() {} 24 25 virtual bool IsPanelFittingDisabled() const = 0; 26 27 virtual void DisableGpuWatchdog() = 0; 28 29 virtual void GetGpuProcessHandles( 30 const GetGpuProcessHandlesCallback& callback) const = 0; 31 }; 32 33 } // namespace ash 34 35 #endif // ASH_GPU_SUPPORT_H_ 36