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

Side by Side Diff: Source/platform/graphics/RecordingImageBufferSurface.h

Issue 1195513002: Use SkImage snapshots for ImageBufferSurface texture access (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: review comments Created 5 years, 6 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 | Annotate | Revision Log
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 RecordingImageBufferSurface_h 5 #ifndef RecordingImageBufferSurface_h
6 #define RecordingImageBufferSurface_h 6 #define RecordingImageBufferSurface_h
7 7
8 #include "platform/graphics/GraphicsContext.h" 8 #include "platform/graphics/GraphicsContext.h"
9 #include "platform/graphics/ImageBufferSurface.h" 9 #include "platform/graphics/ImageBufferSurface.h"
10 #include "public/platform/WebThread.h" 10 #include "public/platform/WebThread.h"
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
47 PassRefPtr<SkImage> newImageSnapshot() const override; 47 PassRefPtr<SkImage> newImageSnapshot() const override;
48 void draw(GraphicsContext*, const FloatRect& destRect, const FloatRect& srcR ect, SkXfermode::Mode) override; 48 void draw(GraphicsContext*, const FloatRect& destRect, const FloatRect& srcR ect, SkXfermode::Mode) override;
49 bool isExpensiveToPaint() override; 49 bool isExpensiveToPaint() override;
50 void setHasExpensiveOp() override { m_currentFrameHasExpensiveOp = true; } 50 void setHasExpensiveOp() override { m_currentFrameHasExpensiveOp = true; }
51 51
52 // Passthroughs to fallback surface 52 // Passthroughs to fallback surface
53 const SkBitmap& bitmap() override; 53 const SkBitmap& bitmap() override;
54 bool restore() override; 54 bool restore() override;
55 WebLayer* layer() const override; 55 WebLayer* layer() const override;
56 bool isAccelerated() const override; 56 bool isAccelerated() const override;
57 Platform3DObject getBackingTexture() const override; 57 PassRefPtr<SkImage> getBackingTextureImage() const override;
58 bool cachedBitmapEnabled() const override; 58 bool cachedBitmapEnabled() const override;
59 const SkBitmap& cachedBitmap() const override; 59 const SkBitmap& cachedBitmap() const override;
60 void invalidateCachedBitmap() override; 60 void invalidateCachedBitmap() override;
61 void updateCachedBitmapIfNeeded() override; 61 void updateCachedBitmapIfNeeded() override;
62 void setIsHidden(bool) override; 62 void setIsHidden(bool) override;
63 63
64 private: 64 private:
65 friend class RecordingImageBufferSurfaceTest; // for unit testing 65 friend class RecordingImageBufferSurfaceTest; // for unit testing
66 void fallBackToRasterCanvas(); 66 void fallBackToRasterCanvas();
67 bool initializeCurrentFrame(); 67 bool initializeCurrentFrame();
(...skipping 10 matching lines...) Expand all
78 bool m_frameWasCleared; 78 bool m_frameWasCleared;
79 bool m_didRecordDrawCommandsInCurrentFrame; 79 bool m_didRecordDrawCommandsInCurrentFrame;
80 bool m_currentFrameHasExpensiveOp; 80 bool m_currentFrameHasExpensiveOp;
81 bool m_previousFrameHasExpensiveOp; 81 bool m_previousFrameHasExpensiveOp;
82 OwnPtr<RecordingImageBufferFallbackSurfaceFactory> m_fallbackFactory; 82 OwnPtr<RecordingImageBufferFallbackSurfaceFactory> m_fallbackFactory;
83 }; 83 };
84 84
85 } // namespace blink 85 } // namespace blink
86 86
87 #endif 87 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698