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

Side by Side Diff: third_party/WebKit/Source/platform/graphics/ImageSource.h

Issue 1331533002: [poc] curve-filter Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Fix CanvasRenderingContext2D::createPattern crash for #40 Created 4 years, 11 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 /* 1 /*
2 * Copyright (C) 2004, 2005, 2006 Apple Computer, Inc. All rights reserved. 2 * Copyright (C) 2004, 2005, 2006 Apple Computer, Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution. 11 * documentation and/or other materials provided with the distribution.
12 * 12 *
13 * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY 13 * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
14 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 14 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 15 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
16 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR 16 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR
17 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 17 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
18 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 18 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
19 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 19 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
20 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 20 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
21 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 21 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
22 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 22 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
23 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 23 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
24 */ 24 */
25 25
26 #ifndef ImageSource_h 26 #ifndef ImageSource_h
27 #define ImageSource_h 27 #define ImageSource_h
28 28
29 #include "platform/PlatformExport.h" 29 #include "platform/PlatformExport.h"
30 #include "platform/graphics/ColorSpaceProfile.h"
30 #include "platform/graphics/ImageOrientation.h" 31 #include "platform/graphics/ImageOrientation.h"
31 #include "wtf/Forward.h" 32 #include "wtf/Forward.h"
32 #include "wtf/Noncopyable.h" 33 #include "wtf/Noncopyable.h"
33 #include "wtf/OwnPtr.h" 34 #include "wtf/OwnPtr.h"
34 35
35 class SkImage; 36 class SkImage;
36 37
37 namespace blink { 38 namespace blink {
38 39
39 class DeferredImageDecoder; 40 class DeferredImageDecoder;
(...skipping 27 matching lines...) Expand all
67 // an increased memory cost to do so. 68 // an increased memory cost to do so.
68 // 69 //
69 // Returns the number of bytes of frame data actually cleared. 70 // Returns the number of bytes of frame data actually cleared.
70 size_t clearCacheExceptFrame(size_t); 71 size_t clearCacheExceptFrame(size_t);
71 72
72 void setData(SharedBuffer& data, bool allDataReceived); 73 void setData(SharedBuffer& data, bool allDataReceived);
73 String filenameExtension() const; 74 String filenameExtension() const;
74 75
75 bool isSizeAvailable(); 76 bool isSizeAvailable();
76 bool hasColorProfile() const; 77 bool hasColorProfile() const;
78 PassRefPtr<ColorSpaceProfile> colorProfile() const;
77 IntSize size(RespectImageOrientationEnum = DoNotRespectImageOrientation) con st; 79 IntSize size(RespectImageOrientationEnum = DoNotRespectImageOrientation) con st;
78 IntSize frameSizeAtIndex(size_t, RespectImageOrientationEnum = DoNotRespectI mageOrientation) const; 80 IntSize frameSizeAtIndex(size_t, RespectImageOrientationEnum = DoNotRespectI mageOrientation) const;
79 81
80 bool getHotSpot(IntPoint&) const; 82 bool getHotSpot(IntPoint&) const;
81 int repetitionCount(); 83 int repetitionCount();
82 84
83 size_t frameCount() const; 85 size_t frameCount() const;
84 86
85 // Attempts to create the requested frame. 87 // Attempts to create the requested frame.
86 PassRefPtr<SkImage> createFrameAtIndex(size_t); 88 PassRefPtr<SkImage> createFrameAtIndex(size_t);
87 89
88 float frameDurationAtIndex(size_t) const; 90 float frameDurationAtIndex(size_t) const;
89 bool frameHasAlphaAtIndex(size_t) const; // Whether or not the frame actuall y used any alpha. 91 bool frameHasAlphaAtIndex(size_t) const; // Whether or not the frame actuall y used any alpha.
90 bool frameIsCompleteAtIndex(size_t) const; // Whether or not the frame is fu lly received. 92 bool frameIsCompleteAtIndex(size_t) const; // Whether or not the frame is fu lly received.
91 ImageOrientation orientationAtIndex(size_t) const; // EXIF image orientation 93 ImageOrientation orientationAtIndex(size_t) const; // EXIF image orientation
92 94
93 // Returns the number of bytes in the decoded frame. May return 0 if the 95 // Returns the number of bytes in the decoded frame. May return 0 if the
94 // frame has not yet begun to decode. 96 // frame has not yet begun to decode.
95 size_t frameBytesAtIndex(size_t) const; 97 size_t frameBytesAtIndex(size_t) const;
96 98
97 private: 99 private:
98 OwnPtr<DeferredImageDecoder> m_decoder; 100 OwnPtr<DeferredImageDecoder> m_decoder;
99 }; 101 };
100 102
101 } // namespace blink 103 } // namespace blink
102 104
103 #endif 105 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698