OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2006 Samuel Weinig (sam.weinig@gmail.com) | 2 * Copyright (C) 2006 Samuel Weinig (sam.weinig@gmail.com) |
3 * Copyright (C) 2004, 2005, 2006 Apple Computer, Inc. All rights reserved. | 3 * Copyright (C) 2004, 2005, 2006 Apple Computer, Inc. All rights reserved. |
4 * Copyright (C) 2008-2009 Torch Mobile, Inc. | 4 * Copyright (C) 2008-2009 Torch Mobile, Inc. |
5 * | 5 * |
6 * Redistribution and use in source and binary forms, with or without | 6 * Redistribution and use in source and binary forms, with or without |
7 * modification, are permitted provided that the following conditions | 7 * modification, are permitted provided that the following conditions |
8 * are met: | 8 * are met: |
9 * 1. Redistributions of source code must retain the above copyright | 9 * 1. Redistributions of source code must retain the above copyright |
10 * notice, this list of conditions and the following disclaimer. | 10 * notice, this list of conditions and the following disclaimer. |
(...skipping 12 matching lines...) Expand all Loading... |
23 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 23 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
25 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 25 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
26 */ | 26 */ |
27 | 27 |
28 #ifndef FrameData_h | 28 #ifndef FrameData_h |
29 #define FrameData_h | 29 #define FrameData_h |
30 | 30 |
31 #include "platform/graphics/ImageOrientation.h" | 31 #include "platform/graphics/ImageOrientation.h" |
32 #include "third_party/skia/include/core/SkImage.h" | 32 #include "third_party/skia/include/core/SkImage.h" |
| 33 #include "wtf/Allocator.h" |
33 #include "wtf/Noncopyable.h" | 34 #include "wtf/Noncopyable.h" |
34 #include "wtf/RefPtr.h" | 35 #include "wtf/RefPtr.h" |
35 #include "wtf/VectorTraits.h" | 36 #include "wtf/VectorTraits.h" |
36 | 37 |
37 namespace blink { | 38 namespace blink { |
38 | 39 |
39 struct FrameData { | 40 struct FrameData { |
| 41 DISALLOW_NEW_EXCEPT_PLACEMENT_NEW(); |
40 WTF_MAKE_NONCOPYABLE(FrameData); | 42 WTF_MAKE_NONCOPYABLE(FrameData); |
41 public: | 43 public: |
42 FrameData(); | 44 FrameData(); |
43 ~FrameData(); | 45 ~FrameData(); |
44 | 46 |
45 // Clear the cached image data on the frame, and (optionally) the metadata. | 47 // Clear the cached image data on the frame, and (optionally) the metadata. |
46 // Returns whether there was cached image data to clear. | 48 // Returns whether there was cached image data to clear. |
47 bool clear(bool clearMetadata); | 49 bool clear(bool clearMetadata); |
48 | 50 |
49 RefPtr<SkImage> m_frame; | 51 RefPtr<SkImage> m_frame; |
50 ImageOrientation m_orientation; | 52 ImageOrientation m_orientation; |
51 float m_duration; | 53 float m_duration; |
52 bool m_haveMetadata : 1; | 54 bool m_haveMetadata : 1; |
53 bool m_isComplete : 1; | 55 bool m_isComplete : 1; |
54 bool m_hasAlpha : 1; | 56 bool m_hasAlpha : 1; |
55 size_t m_frameBytes; | 57 size_t m_frameBytes; |
56 }; | 58 }; |
57 | 59 |
58 } // namespace blink | 60 } // namespace blink |
59 | 61 |
60 namespace WTF { | 62 namespace WTF { |
61 template<> struct VectorTraits<blink::FrameData> : public SimpleClassVectorTrait
s<blink::FrameData> { | 63 template<> struct VectorTraits<blink::FrameData> : public SimpleClassVectorTrait
s<blink::FrameData> { |
| 64 STATIC_ONLY(VectorTraits); |
62 static const bool canInitializeWithMemset = false; // Not all FrameData memb
ers initialize to 0. | 65 static const bool canInitializeWithMemset = false; // Not all FrameData memb
ers initialize to 0. |
63 }; | 66 }; |
64 } | 67 } |
65 | 68 |
66 #endif // FrameData_h | 69 #endif // FrameData_h |
OLD | NEW |