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

Side by Side Diff: ui/ozone/platform/drm/gpu/hardware_display_plane_atomic.h

Issue 1294113005: Atomic: Don’t keep track of Cursor planes (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Style fix Created 5 years, 3 months 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
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 UI_OZONE_PLATFORM_DRM_GPU_HARDWARE_DISPLAY_PLANE_ATOMIC_H_ 5 #ifndef UI_OZONE_PLATFORM_DRM_GPU_HARDWARE_DISPLAY_PLANE_ATOMIC_H_
6 #define UI_OZONE_PLATFORM_DRM_GPU_HARDWARE_DISPLAY_PLANE_ATOMIC_H_ 6 #define UI_OZONE_PLATFORM_DRM_GPU_HARDWARE_DISPLAY_PLANE_ATOMIC_H_
7 7
8 #include "ui/ozone/platform/drm/gpu/hardware_display_plane.h" 8 #include "ui/ozone/platform/drm/gpu/hardware_display_plane.h"
9 9
10 #include <xf86drmMode.h> 10 #include <xf86drmMode.h>
11 11
12 namespace ui { 12 namespace ui {
13 13
14 class CrtcController; 14 class CrtcController;
15 class DrmDevice; 15 class DrmDevice;
16 16
17 class HardwareDisplayPlaneAtomic : public HardwareDisplayPlane { 17 class HardwareDisplayPlaneAtomic : public HardwareDisplayPlane {
18 public: 18 public:
19 HardwareDisplayPlaneAtomic(uint32_t plane_id, uint32_t possible_crtcs); 19 HardwareDisplayPlaneAtomic(uint32_t plane_id, uint32_t possible_crtcs);
20 ~HardwareDisplayPlaneAtomic() override; 20 ~HardwareDisplayPlaneAtomic() override;
21 21
22 bool SetPlaneData(drmModePropertySet* property_set, 22 bool SetPlaneData(drmModePropertySet* property_set,
23 uint32_t crtc_id, 23 uint32_t crtc_id,
24 uint32_t framebuffer, 24 uint32_t framebuffer,
25 const gfx::Rect& crtc_rect, 25 const gfx::Rect& crtc_rect,
26 const gfx::Rect& src_rect); 26 const gfx::Rect& src_rect);
27 27
28 // HardwareDisplayPlane: 28 // HardwareDisplayPlane:
29 bool Initialize(DrmDevice* drm,
30 const std::vector<uint32_t>& formats) override;
31 bool IsSupportedFormat(uint32_t format) const override; 29 bool IsSupportedFormat(uint32_t format) const override;
32 30
33 void set_crtc(CrtcController* crtc) { crtc_ = crtc; } 31 void set_crtc(CrtcController* crtc) { crtc_ = crtc; }
34 CrtcController* crtc() const { return crtc_; } 32 CrtcController* crtc() const { return crtc_; }
35 33
36 private: 34 private:
35 bool InitializeProperties(
36 DrmDevice* drm,
37 const ScopedDrmObjectPropertyPtr& plane_props) override;
38
37 struct Property { 39 struct Property {
38 Property(); 40 Property();
39 bool Initialize(DrmDevice* drm, 41 bool Initialize(DrmDevice* drm,
40 const char* name, 42 const char* name,
41 const ScopedDrmObjectPropertyPtr& plane_properties); 43 const ScopedDrmObjectPropertyPtr& plane_properties);
42 uint32_t id = 0; 44 uint32_t id = 0;
43 }; 45 };
44 46
45 Property crtc_prop_; 47 Property crtc_prop_;
46 Property fb_prop_; 48 Property fb_prop_;
47 Property crtc_x_prop_; 49 Property crtc_x_prop_;
48 Property crtc_y_prop_; 50 Property crtc_y_prop_;
49 Property crtc_w_prop_; 51 Property crtc_w_prop_;
50 Property crtc_h_prop_; 52 Property crtc_h_prop_;
51 Property src_x_prop_; 53 Property src_x_prop_;
52 Property src_y_prop_; 54 Property src_y_prop_;
53 Property src_w_prop_; 55 Property src_w_prop_;
54 Property src_h_prop_; 56 Property src_h_prop_;
55 CrtcController* crtc_ = nullptr; 57 CrtcController* crtc_ = nullptr;
56 std::vector<uint32_t> supported_formats_;
57 }; 58 };
58 59
59 } // namespace ui 60 } // namespace ui
60 61
61 #endif // UI_OZONE_PLATFORM_DRM_GPU_HARDWARE_DISPLAY_PLANE_ATOMIC_H_ 62 #endif // UI_OZONE_PLATFORM_DRM_GPU_HARDWARE_DISPLAY_PLANE_ATOMIC_H_
OLDNEW
« no previous file with comments | « ui/ozone/platform/drm/gpu/hardware_display_plane.cc ('k') | ui/ozone/platform/drm/gpu/hardware_display_plane_atomic.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698