OLD | NEW |
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 #include "services/gfx/compositor/render/render_image.h" | 5 #include "services/gfx/compositor/render/render_image.h" |
6 | 6 |
7 #include "base/bind.h" | 7 #include "base/bind.h" |
8 #include "base/location.h" | 8 #include "base/location.h" |
9 #include "base/logging.h" | 9 #include "base/logging.h" |
10 #include "mojo/skia/ganesh_image_factory.h" | 10 #include "mojo/skia/ganesh_image_factory.h" |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
48 releaser_(releaser) { | 48 releaser_(releaser) { |
49 DCHECK(releaser_); | 49 DCHECK(releaser_); |
50 } | 50 } |
51 | 51 |
52 ~Generator() override {} | 52 ~Generator() override {} |
53 | 53 |
54 private: | 54 private: |
55 scoped_refptr<Releaser> releaser_; | 55 scoped_refptr<Releaser> releaser_; |
56 }; | 56 }; |
57 | 57 |
58 RenderImage::RenderImage(const skia::RefPtr<SkImage>& image, | 58 RenderImage::RenderImage(const sk_sp<SkImage>& image, |
59 const scoped_refptr<Releaser>& releaser) | 59 const scoped_refptr<Releaser>& releaser) |
60 : image_(image), releaser_(releaser) { | 60 : image_(image), releaser_(releaser) { |
61 DCHECK(image_); | 61 DCHECK(image_); |
62 DCHECK(releaser_); | 62 DCHECK(releaser_); |
63 } | 63 } |
64 | 64 |
65 RenderImage::~RenderImage() {} | 65 RenderImage::~RenderImage() {} |
66 | 66 |
67 scoped_refptr<RenderImage> RenderImage::CreateFromMailboxTexture( | 67 scoped_refptr<RenderImage> RenderImage::CreateFromMailboxTexture( |
68 const GLbyte mailbox_name[GL_MAILBOX_SIZE_CHROMIUM], | 68 const GLbyte mailbox_name[GL_MAILBOX_SIZE_CHROMIUM], |
69 GLuint sync_point, | 69 GLuint sync_point, |
70 uint32_t width, | 70 uint32_t width, |
71 uint32_t height, | 71 uint32_t height, |
72 mojo::gfx::composition::MailboxTextureResource::Origin origin, | 72 mojo::gfx::composition::MailboxTextureResource::Origin origin, |
73 const scoped_refptr<base::TaskRunner>& task_runner, | 73 const scoped_refptr<base::TaskRunner>& task_runner, |
74 const base::Closure& release_task) { | 74 const base::Closure& release_task) { |
75 scoped_refptr<Releaser> releaser = new Releaser(task_runner, release_task); | 75 scoped_refptr<Releaser> releaser = new Releaser(task_runner, release_task); |
76 skia::RefPtr<SkImage> image = skia::AdoptRef(SkImage::NewFromGenerator( | 76 sk_sp<SkImage> image = SkImage::MakeFromGenerator( |
77 new Generator(releaser, mailbox_name, sync_point, width, height, | 77 new Generator(releaser, mailbox_name, sync_point, width, height, |
78 origin == mojo::gfx::composition::MailboxTextureResource:: | 78 origin == mojo::gfx::composition::MailboxTextureResource:: |
79 Origin::BOTTOM_LEFT | 79 Origin::BOTTOM_LEFT |
80 ? kBottomLeft_GrSurfaceOrigin | 80 ? kBottomLeft_GrSurfaceOrigin |
81 : kTopLeft_GrSurfaceOrigin))); | 81 : kTopLeft_GrSurfaceOrigin)); |
82 if (!image) | 82 if (!image) |
83 return nullptr; | 83 return nullptr; |
84 | 84 |
85 return new RenderImage(image, releaser); | 85 return new RenderImage(image, releaser); |
86 } | 86 } |
87 | 87 |
88 } // namespace compositor | 88 } // namespace compositor |
OLD | NEW |