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 #include <fcntl.h> | 5 #include <fcntl.h> |
6 #include <libdrm/i915_drm.h> | 6 #include <libdrm/i915_drm.h> |
7 #include <linux/types.h> | 7 #include <linux/types.h> |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 #include <stdio.h> | 9 #include <stdio.h> |
10 #include <sys/mman.h> | 10 #include <sys/mman.h> |
11 #include <xf86drm.h> | 11 #include <xf86drm.h> |
12 | 12 |
13 #include "base/files/scoped_file.h" | 13 #include "base/files/scoped_file.h" |
14 #include "base/posix/eintr_wrapper.h" | 14 #include "base/posix/eintr_wrapper.h" |
15 #include "testing/gtest/include/gtest/gtest.h" | 15 #include "testing/gtest/include/gtest/gtest.h" |
16 #include "ui/gfx/buffer_types.h" | 16 #include "ui/gfx/buffer_types.h" |
17 #include "ui/gl/gl_image_ozone_native_pixmap.h" | |
18 #include "ui/gl/test/gl_image_test_template.h" | 17 #include "ui/gl/test/gl_image_test_template.h" |
| 18 #include "ui/ozone/gl/gl_image_ozone_native_pixmap.h" |
19 #include "ui/ozone/public/ozone_platform.h" | 19 #include "ui/ozone/public/ozone_platform.h" |
20 #include "ui/ozone/public/surface_factory_ozone.h" | 20 #include "ui/ozone/public/surface_factory_ozone.h" |
21 | 21 |
22 namespace gl { | 22 namespace gl { |
23 namespace { | 23 namespace { |
24 | 24 |
25 // These values are picked so that RGB -> YVU on the CPU converted | 25 // These values are picked so that RGB -> YVU on the CPU converted |
26 // back to RGB on the GPU produces the original RGB values without | 26 // back to RGB on the GPU produces the original RGB values without |
27 // any error. | 27 // any error. |
28 const uint8_t kImageColor[] = {0x10, 0x20, 0, 0xFF}; | 28 const uint8_t kImageColor[] = {0x10, 0x20, 0, 0xFF}; |
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
103 // via exo. | 103 // via exo. |
104 // TODO(dcastagna): once it's possible to allocate and map YV12 format | 104 // TODO(dcastagna): once it's possible to allocate and map YV12 format |
105 // using Ozone merge this test with GLImageOzoneNativePixmapTestDelegate. | 105 // using Ozone merge this test with GLImageOzoneNativePixmapTestDelegate. |
106 class GLImageOzoneNativePixmapDrmTestDelegate { | 106 class GLImageOzoneNativePixmapDrmTestDelegate { |
107 public: | 107 public: |
108 GLImageOzoneNativePixmapDrmTestDelegate() {} | 108 GLImageOzoneNativePixmapDrmTestDelegate() {} |
109 scoped_refptr<GLImage> CreateSolidColorImage(const gfx::Size& size, | 109 scoped_refptr<GLImage> CreateSolidColorImage(const gfx::Size& size, |
110 const uint8_t color[4]) const { | 110 const uint8_t color[4]) const { |
111 scoped_refptr<ui::NativePixmap> pixmap = CreateYVU420Pixmap(size, color); | 111 scoped_refptr<ui::NativePixmap> pixmap = CreateYVU420Pixmap(size, color); |
112 | 112 |
113 scoped_refptr<GLImageOzoneNativePixmap> image( | 113 scoped_refptr<ui::GLImageOzoneNativePixmap> image( |
114 new GLImageOzoneNativePixmap(size, GL_RGB_YCRCB_420_CHROMIUM)); | 114 new ui::GLImageOzoneNativePixmap(size, GL_RGB_YCRCB_420_CHROMIUM)); |
115 EXPECT_TRUE(image->Initialize(pixmap.get(), pixmap->GetBufferFormat())); | 115 EXPECT_TRUE(image->Initialize(pixmap.get(), pixmap->GetBufferFormat())); |
116 return image; | 116 return image; |
117 } | 117 } |
118 | 118 |
119 unsigned GetTextureTarget() const { return GL_TEXTURE_EXTERNAL_OES; } | 119 unsigned GetTextureTarget() const { return GL_TEXTURE_EXTERNAL_OES; } |
120 | 120 |
121 const uint8_t* GetImageColor() { return kImageColor; } | 121 const uint8_t* GetImageColor() { return kImageColor; } |
122 | 122 |
123 private: | 123 private: |
124 }; | 124 }; |
125 | 125 |
126 | 126 |
127 // TODO(crbug.com/618516) - The tests in this file can only be run | 127 // TODO(crbug.com/618516) - The tests in this file can only be run |
128 // on a real device, and not on linux desktop builds, so they are | 128 // on a real device, and not on linux desktop builds, so they are |
129 // disabled until they can correctly detect the environment and do | 129 // disabled until they can correctly detect the environment and do |
130 INSTANTIATE_TYPED_TEST_CASE_P(DISABLED_GLImageOzoneNativePixmapDrm, | 130 INSTANTIATE_TYPED_TEST_CASE_P(DISABLED_GLImageOzoneNativePixmapDrm, |
131 GLImageTest, | 131 GLImageTest, |
132 GLImageOzoneNativePixmapDrmTestDelegate); | 132 GLImageOzoneNativePixmapDrmTestDelegate); |
133 | 133 |
134 INSTANTIATE_TYPED_TEST_CASE_P(DISABLED_GLImageOzoneNativePixmapDrm, | 134 INSTANTIATE_TYPED_TEST_CASE_P(DISABLED_GLImageOzoneNativePixmapDrm, |
135 GLImageBindTest, | 135 GLImageBindTest, |
136 GLImageOzoneNativePixmapDrmTestDelegate); | 136 GLImageOzoneNativePixmapDrmTestDelegate); |
137 | 137 |
138 } // namespace | 138 } // namespace |
139 } // namespace gl | 139 } // namespace gl |
OLD | NEW |