OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CC_SURFACES_SURFACE_OBSERVER_H_ | 5 #ifndef CC_SURFACES_SURFACE_OBSERVER_H_ |
6 #define CC_SURFACES_SURFACE_OBSERVER_H_ | 6 #define CC_SURFACES_SURFACE_OBSERVER_H_ |
7 | 7 |
8 namespace cc { | 8 namespace cc { |
9 | 9 |
10 class SurfaceInfo; | 10 class SurfaceInfo; |
11 | 11 |
12 class SurfaceObserver { | 12 class SurfaceObserver { |
13 public: | 13 public: |
14 // Runs when a CompositorFrame is received for the given SurfaceInfo for the | 14 // Runs when a CompositorFrame is received for the given SurfaceInfo for the |
15 // first time. | 15 // first time. |
16 virtual void OnSurfaceCreated(const SurfaceInfo& surface_info) = 0; | 16 virtual void OnSurfaceCreated(const SurfaceInfo& surface_info) = 0; |
17 | 17 |
18 // Runs when a Surface is damaged. *changed should be set to true if this | 18 // Runs when a Surface is damaged. *changed should be set to true if this |
19 // causes a Display to be damaged. | 19 // causes a Display to be damaged. |
20 virtual void OnSurfaceDamaged(const SurfaceId& surface_id, bool* changed) = 0; | 20 virtual void OnSurfaceDamaged(const SurfaceId& surface_id, bool* changed) = 0; |
| 21 |
| 22 // Called when a surface is garbage-collected. |
| 23 virtual void OnSurfaceDiscarded(const SurfaceId& surface_id) = 0; |
21 }; | 24 }; |
22 | 25 |
23 } // namespace cc | 26 } // namespace cc |
24 | 27 |
25 #endif // CC_SURFACES_SURFACE_OBSERVER_H_ | 28 #endif // CC_SURFACES_SURFACE_OBSERVER_H_ |
OLD | NEW |