• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 //
2 // Copyright 2014 The ANGLE Project Authors. All rights reserved.
3 // Use of this source code is governed by a BSD-style license that can be
4 // found in the LICENSE file.
5 //
6 
7 // Trim11.h: Trim support utility class.
8 
9 #ifndef LIBANGLE_RENDERER_D3D_D3D11_TRIM11_H_
10 #define LIBANGLE_RENDERER_D3D_D3D11_TRIM11_H_
11 
12 #include "common/angleutils.h"
13 #include "libANGLE/Error.h"
14 #include "libANGLE/angletypes.h"
15 
16 #if defined(ANGLE_ENABLE_WINDOWS_UWP)
17 #    include <EventToken.h>
18 #endif
19 
20 namespace rx
21 {
22 class Renderer11;
23 
24 class Trim11 : angle::NonCopyable
25 {
26   public:
27     explicit Trim11(Renderer11 *renderer);
28     ~Trim11();
29 
30   private:
31     Renderer11 *mRenderer;
32 #if defined(ANGLE_ENABLE_WINDOWS_UWP)
33     EventRegistrationToken mApplicationSuspendedEventToken;
34 #endif
35 
36     void trim();
37     bool registerForRendererTrimRequest();
38     void unregisterForRendererTrimRequest();
39 };
40 
41 }  // namespace rx
42 
43 #endif  // LIBANGLE_RENDERER_D3D_D3D11_TRIM11_H_
44