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 
5 #ifndef COMPONENTS_EXO_WAYLAND_CLIENTS_BLUR_H_
6 #define COMPONENTS_EXO_WAYLAND_CLIENTS_BLUR_H_
7 
8 #include "components/exo/wayland/clients/client_base.h"
9 
10 class SkImage;
11 
12 namespace exo {
13 namespace wayland {
14 namespace clients {
15 
16 // Client that can be used to measure the cost of blur filter effects
17 // across different devices.
18 class Blur : public wayland::clients::ClientBase {
19  public:
20   Blur();
21   ~Blur() override;
22 
23   void Run(double sigma_x,
24            double sigma_y,
25            double max_sigma,
26            bool offscreen,
27            int frames);
28 
29  private:
30   sk_sp<SkImage> grid_image_;
31 
32   DISALLOW_COPY_AND_ASSIGN(Blur);
33 };
34 
35 }  // namespace clients
36 }  // namespace wayland
37 }  // namespace exo
38 
39 #endif  // COMPONENTS_EXO_WAYLAND_CLIENTS_BLUR_H_
40