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

Side by Side Diff: Source/wtf/Uint8ClampedArray.h

Issue 1180713004: Remove unused code from WTF TypedArrays (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: 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
« no previous file with comments | « Source/wtf/Uint8Array.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2009 Apple Inc. All rights reserved. 2 * Copyright (C) 2009 Apple Inc. All rights reserved.
3 * Copyright (C) 2009 Google Inc. All rights reserved. 3 * Copyright (C) 2009 Google Inc. All rights reserved.
4 * Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). 4 * Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).
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 21 matching lines...) Expand all
32 #include "wtf/MathExtras.h" 32 #include "wtf/MathExtras.h"
33 33
34 namespace WTF { 34 namespace WTF {
35 35
36 class Uint8ClampedArray final : public Uint8Array { 36 class Uint8ClampedArray final : public Uint8Array {
37 public: 37 public:
38 static inline PassRefPtr<Uint8ClampedArray> create(unsigned length); 38 static inline PassRefPtr<Uint8ClampedArray> create(unsigned length);
39 static inline PassRefPtr<Uint8ClampedArray> create(const unsigned char* arra y, unsigned length); 39 static inline PassRefPtr<Uint8ClampedArray> create(const unsigned char* arra y, unsigned length);
40 static inline PassRefPtr<Uint8ClampedArray> create(PassRefPtr<ArrayBuffer>, unsigned byteOffset, unsigned length); 40 static inline PassRefPtr<Uint8ClampedArray> create(PassRefPtr<ArrayBuffer>, unsigned byteOffset, unsigned length);
41 41
42 // Should only be used when it is known the entire array will be filled. Do
43 // not return these results directly to JavaScript without filling first.
44 static inline PassRefPtr<Uint8ClampedArray> createUninitialized(unsigned len gth);
45
46 // It's only needed to potentially call this method if the array
47 // was created uninitialized -- the default initialization paths
48 // zero the allocated memory.
49 inline void zeroFill();
50
51 using TypedArrayBase<unsigned char>::set; 42 using TypedArrayBase<unsigned char>::set;
52 inline void set(unsigned index, double value); 43 inline void set(unsigned index, double value);
53 44
54 inline PassRefPtr<Uint8ClampedArray> subarray(int start) const;
55 inline PassRefPtr<Uint8ClampedArray> subarray(int start, int end) const;
56
57 virtual ViewType type() const override 45 virtual ViewType type() const override
58 { 46 {
59 return TypeUint8Clamped; 47 return TypeUint8Clamped;
60 } 48 }
61 49
62 private: 50 private:
63 inline Uint8ClampedArray(PassRefPtr<ArrayBuffer>, 51 inline Uint8ClampedArray(PassRefPtr<ArrayBuffer>,
64 unsigned byteOffset, 52 unsigned byteOffset,
65 unsigned length); 53 unsigned length);
66 // Make constructor visible to superclass. 54 // Make constructor visible to superclass.
67 friend class TypedArrayBase<unsigned char>; 55 friend class TypedArrayBase<unsigned char>;
68 }; 56 };
69 57
70 PassRefPtr<Uint8ClampedArray> Uint8ClampedArray::create(unsigned length) 58 PassRefPtr<Uint8ClampedArray> Uint8ClampedArray::create(unsigned length)
71 { 59 {
72 return TypedArrayBase<unsigned char>::create<Uint8ClampedArray>(length); 60 return TypedArrayBase<unsigned char>::create<Uint8ClampedArray>(length);
73 } 61 }
74 62
75 PassRefPtr<Uint8ClampedArray> Uint8ClampedArray::create(const unsigned char* arr ay, unsigned length) 63 PassRefPtr<Uint8ClampedArray> Uint8ClampedArray::create(const unsigned char* arr ay, unsigned length)
76 { 64 {
77 return TypedArrayBase<unsigned char>::create<Uint8ClampedArray>(array, lengt h); 65 return TypedArrayBase<unsigned char>::create<Uint8ClampedArray>(array, lengt h);
78 } 66 }
79 67
80 PassRefPtr<Uint8ClampedArray> Uint8ClampedArray::create(PassRefPtr<ArrayBuffer> buffer, unsigned byteOffset, unsigned length) 68 PassRefPtr<Uint8ClampedArray> Uint8ClampedArray::create(PassRefPtr<ArrayBuffer> buffer, unsigned byteOffset, unsigned length)
81 { 69 {
82 return TypedArrayBase<unsigned char>::create<Uint8ClampedArray>(buffer, byte Offset, length); 70 return TypedArrayBase<unsigned char>::create<Uint8ClampedArray>(buffer, byte Offset, length);
83 } 71 }
84 72
85 PassRefPtr<Uint8ClampedArray> Uint8ClampedArray::createUninitialized(unsigned le ngth)
86 {
87 return TypedArrayBase<unsigned char>::createUninitialized<Uint8ClampedArray> (length);
88 }
89
90 void Uint8ClampedArray::zeroFill()
91 {
92 zeroRange(0, length());
93 }
94
95 void Uint8ClampedArray::set(unsigned index, double value) 73 void Uint8ClampedArray::set(unsigned index, double value)
96 { 74 {
97 if (index >= m_length) 75 if (index >= m_length)
98 return; 76 return;
99 if (std::isnan(value) || value < 0) 77 if (std::isnan(value) || value < 0)
100 value = 0; 78 value = 0;
101 else if (value > 255) 79 else if (value > 255)
102 value = 255; 80 value = 255;
103 data()[index] = static_cast<unsigned char>(lrint(value)); 81 data()[index] = static_cast<unsigned char>(lrint(value));
104 } 82 }
105 83
106 Uint8ClampedArray::Uint8ClampedArray(PassRefPtr<ArrayBuffer> buffer, unsigned by teOffset, unsigned length) 84 Uint8ClampedArray::Uint8ClampedArray(PassRefPtr<ArrayBuffer> buffer, unsigned by teOffset, unsigned length)
107 : Uint8Array(buffer, byteOffset, length) 85 : Uint8Array(buffer, byteOffset, length)
108 { 86 {
109 } 87 }
110 88
111 PassRefPtr<Uint8ClampedArray> Uint8ClampedArray::subarray(int start) const
112 {
113 return subarray(start, length());
114 }
115
116 PassRefPtr<Uint8ClampedArray> Uint8ClampedArray::subarray(int start, int end) co nst
117 {
118 return subarrayImpl<Uint8ClampedArray>(start, end);
119 }
120
121 } // namespace WTF 89 } // namespace WTF
122 90
123 using WTF::Uint8ClampedArray; 91 using WTF::Uint8ClampedArray;
124 92
125 #endif // Uint8ClampedArray_h 93 #endif // Uint8ClampedArray_h
OLDNEW
« no previous file with comments | « Source/wtf/Uint8Array.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698