Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(198)

Side by Side Diff: components/exo/display.h

Issue 2404513002: exo: Implement zcr_linux_explicit_synchronization_v1
Patch Set: rebase, pull in cl 2443823002 Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « components/exo/buffer_unittest.cc ('k') | components/exo/display.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 COMPONENTS_EXO_DISPLAY_H_ 5 #ifndef COMPONENTS_EXO_DISPLAY_H_
6 #define COMPONENTS_EXO_DISPLAY_H_ 6 #define COMPONENTS_EXO_DISPLAY_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 9
10 #include <memory> 10 #include <memory>
11 #include <string> 11 #include <string>
12 12
13 #include "base/macros.h" 13 #include "base/macros.h"
14 #include "base/memory/shared_memory_handle.h" 14 #include "base/memory/shared_memory_handle.h"
15 15
16 #if defined(OS_LINUX)
17 #include "base/files/scoped_file.h"
18 #endif
19
16 #if defined(USE_OZONE) 20 #if defined(USE_OZONE)
17 #include "base/files/scoped_file.h"
18 #include "ui/gfx/buffer_types.h" 21 #include "ui/gfx/buffer_types.h"
19 #include "ui/gfx/geometry/size.h" 22 #include "ui/gfx/geometry/size.h"
20 #include "ui/gfx/native_pixmap_handle.h" 23 #include "ui/gfx/native_pixmap_handle.h"
21 #endif 24 #endif
22 25
23 namespace gfx { 26 namespace gfx {
27 class GpuFence;
24 class Point; 28 class Point;
25 } 29 }
26 30
27 namespace exo { 31 namespace exo {
28 class NotificationSurface; 32 class NotificationSurface;
29 class NotificationSurfaceManager; 33 class NotificationSurfaceManager;
30 class SharedMemory; 34 class SharedMemory;
31 class ShellSurface; 35 class ShellSurface;
32 class SubSurface; 36 class SubSurface;
33 class Surface; 37 class Surface;
(...skipping 20 matching lines...) Expand all
54 const base::SharedMemoryHandle& handle, 58 const base::SharedMemoryHandle& handle,
55 size_t size); 59 size_t size);
56 60
57 #if defined(USE_OZONE) 61 #if defined(USE_OZONE)
58 // Creates a buffer for a Linux DMA-buf file descriptor. 62 // Creates a buffer for a Linux DMA-buf file descriptor.
59 std::unique_ptr<Buffer> CreateLinuxDMABufBuffer( 63 std::unique_ptr<Buffer> CreateLinuxDMABufBuffer(
60 const gfx::Size& size, 64 const gfx::Size& size,
61 gfx::BufferFormat format, 65 gfx::BufferFormat format,
62 const std::vector<gfx::NativePixmapPlane>& planes, 66 const std::vector<gfx::NativePixmapPlane>& planes,
63 std::vector<base::ScopedFD>&& fds); 67 std::vector<base::ScopedFD>&& fds);
64 #endif 68 #endif // defined(USE_OZONE)
69
70 #if defined(OS_LINUX)
71 // Creates a GpuFence for a Linux fence file descriptor.
72 std::unique_ptr<gfx::GpuFence> CreateLinuxFence(base::ScopedFD fd);
73 #endif // defined(OS_LINUX)
65 74
66 // Creates a shell surface for an existing surface. 75 // Creates a shell surface for an existing surface.
67 std::unique_ptr<ShellSurface> CreateShellSurface(Surface* surface); 76 std::unique_ptr<ShellSurface> CreateShellSurface(Surface* surface);
68 77
69 // Creates a popup shell surface for an existing surface at |position| and 78 // Creates a popup shell surface for an existing surface at |position| and
70 // with |parent|. |position| is in |parent| surface local coordinates. 79 // with |parent|. |position| is in |parent| surface local coordinates.
71 std::unique_ptr<ShellSurface> CreatePopupShellSurface( 80 std::unique_ptr<ShellSurface> CreatePopupShellSurface(
72 Surface* surface, 81 Surface* surface,
73 ShellSurface* parent, 82 ShellSurface* parent,
74 const gfx::Point& position); 83 const gfx::Point& position);
(...skipping 14 matching lines...) Expand all
89 98
90 private: 99 private:
91 NotificationSurfaceManager* const notification_surface_manager_; 100 NotificationSurfaceManager* const notification_surface_manager_;
92 101
93 DISALLOW_COPY_AND_ASSIGN(Display); 102 DISALLOW_COPY_AND_ASSIGN(Display);
94 }; 103 };
95 104
96 } // namespace exo 105 } // namespace exo
97 106
98 #endif // COMPONENTS_EXO_DISPLAY_H_ 107 #endif // COMPONENTS_EXO_DISPLAY_H_
OLDNEW
« no previous file with comments | « components/exo/buffer_unittest.cc ('k') | components/exo/display.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698