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 #ifndef AcceleratedStaticBitmapImage_h | 5 #ifndef AcceleratedStaticBitmapImage_h |
6 #define AcceleratedStaticBitmapImage_h | 6 #define AcceleratedStaticBitmapImage_h |
7 | 7 |
8 #include "base/threading/thread_checker.h" | 8 #include "base/threading/thread_checker.h" |
9 #include "platform/graphics/StaticBitmapImage.h" | 9 #include "platform/graphics/StaticBitmapImage.h" |
10 #include "platform/graphics/TextureHolder.h" | 10 #include "platform/graphics/TextureHolder.h" |
(...skipping 20 matching lines...) Expand all Loading... |
31 // backing, allowing other contexts to use the same backing. | 31 // backing, allowing other contexts to use the same backing. |
32 static PassRefPtr<AcceleratedStaticBitmapImage> createFromWebGLContextImage( | 32 static PassRefPtr<AcceleratedStaticBitmapImage> createFromWebGLContextImage( |
33 const gpu::Mailbox&, | 33 const gpu::Mailbox&, |
34 const gpu::SyncToken&, | 34 const gpu::SyncToken&, |
35 unsigned textureId, | 35 unsigned textureId, |
36 WeakPtr<WebGraphicsContext3DProviderWrapper>, | 36 WeakPtr<WebGraphicsContext3DProviderWrapper>, |
37 IntSize mailboxSize); | 37 IntSize mailboxSize); |
38 | 38 |
39 bool currentFrameKnownToBeOpaque(MetadataMode = UseCurrentMetadata) override; | 39 bool currentFrameKnownToBeOpaque(MetadataMode = UseCurrentMetadata) override; |
40 IntSize size() const override; | 40 IntSize size() const override; |
41 sk_sp<SkImage> imageForCurrentFrame() override; | 41 sk_sp<SkImage> imageForCurrentFrame(const ColorBehavior&) override; |
42 bool isTextureBacked() final { return true; } | 42 bool isTextureBacked() final { return true; } |
43 | 43 |
44 void draw(SkCanvas*, | 44 void draw(SkCanvas*, |
45 const SkPaint&, | 45 const SkPaint&, |
46 const FloatRect& dstRect, | 46 const FloatRect& dstRect, |
47 const FloatRect& srcRect, | 47 const FloatRect& srcRect, |
48 RespectImageOrientationEnum, | 48 RespectImageOrientationEnum, |
49 ImageClampingMode) override; | 49 ImageClampingMode, |
| 50 const ColorBehavior&) override; |
50 | 51 |
51 void copyToTexture(WebGraphicsContext3DProvider*, | 52 void copyToTexture(WebGraphicsContext3DProvider*, |
52 GLuint destTextureId, | 53 GLuint destTextureId, |
53 GLenum destInternalFormat, | 54 GLenum destInternalFormat, |
54 GLenum destType, | 55 GLenum destType, |
55 bool flipY) override; | 56 bool flipY) override; |
56 | 57 |
57 bool hasMailbox() final { return m_textureHolder->isMailboxTextureHolder(); } | 58 bool hasMailbox() final { return m_textureHolder->isMailboxTextureHolder(); } |
58 // To be called on sender thread before performing a transfer | 59 // To be called on sender thread before performing a transfer |
59 void transfer() final; | 60 void transfer() final; |
(...skipping 18 matching lines...) Expand all Loading... |
78 | 79 |
79 std::unique_ptr<TextureHolder> m_textureHolder; | 80 std::unique_ptr<TextureHolder> m_textureHolder; |
80 | 81 |
81 base::ThreadChecker m_threadChecker; | 82 base::ThreadChecker m_threadChecker; |
82 bool m_detachThreadAtNextCheck = false; | 83 bool m_detachThreadAtNextCheck = false; |
83 }; | 84 }; |
84 | 85 |
85 } // namespace blink | 86 } // namespace blink |
86 | 87 |
87 #endif | 88 #endif |
OLD | NEW |