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

Side by Side Diff: third_party/WebKit/Source/platform/audio/AudioArray.h

Issue 2384073002: reflow comments in platform/audio (Closed)
Patch Set: comments (heh!) Created 4 years, 2 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
« no previous file with comments | « no previous file | third_party/WebKit/Source/platform/audio/AudioBus.h » ('j') | 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) 2010 Google Inc. All rights reserved. 2 * Copyright (C) 2010 Google 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 * 7 *
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
44 44
45 public: 45 public:
46 AudioArray() : m_allocation(nullptr), m_alignedData(nullptr), m_size(0) {} 46 AudioArray() : m_allocation(nullptr), m_alignedData(nullptr), m_size(0) {}
47 explicit AudioArray(size_t n) 47 explicit AudioArray(size_t n)
48 : m_allocation(nullptr), m_alignedData(nullptr), m_size(0) { 48 : m_allocation(nullptr), m_alignedData(nullptr), m_size(0) {
49 allocate(n); 49 allocate(n);
50 } 50 }
51 51
52 ~AudioArray() { WTF::Partitions::fastFree(m_allocation); } 52 ~AudioArray() { WTF::Partitions::fastFree(m_allocation); }
53 53
54 // It's OK to call allocate() multiple times, but data will *not* be copied fr om an initial allocation 54 // It's OK to call allocate() multiple times, but data will *not* be copied
55 // if re-allocated. Allocations are zero-initialized. 55 // from an initial allocation if re-allocated. Allocations are
56 // zero-initialized.
56 void allocate(size_t n) { 57 void allocate(size_t n) {
57 // Although n is a size_t, its true limit is max unsigned because we use uns igned in zeroRange() 58 // Although n is a size_t, its true limit is max unsigned because we use
58 // and copyToRange(). Also check for integer overflow. 59 // unsigned in zeroRange() and copyToRange(). Also check for integer
60 // overflow.
59 RELEASE_ASSERT(n <= std::numeric_limits<unsigned>::max() / sizeof(T)); 61 RELEASE_ASSERT(n <= std::numeric_limits<unsigned>::max() / sizeof(T));
60 62
61 unsigned initialSize = sizeof(T) * n; 63 unsigned initialSize = sizeof(T) * n;
62 64
63 #if USE(WEBAUDIO_FFMPEG) || USE(WEBAUDIO_OPENMAX_DL_FFT) 65 #if USE(WEBAUDIO_FFMPEG) || USE(WEBAUDIO_OPENMAX_DL_FFT)
64 const size_t alignment = 32; 66 const size_t alignment = 32;
65 #else 67 #else
66 const size_t alignment = 16; 68 const size_t alignment = 16;
67 #endif 69 #endif
68 70
(...skipping 17 matching lines...) Expand all
86 88
87 T* alignedData = alignedAddress(allocation, alignment); 89 T* alignedData = alignedAddress(allocation, alignment);
88 90
89 if (alignedData == allocation || extraAllocationBytes == alignment) { 91 if (alignedData == allocation || extraAllocationBytes == alignment) {
90 m_allocation = allocation; 92 m_allocation = allocation;
91 m_alignedData = alignedData; 93 m_alignedData = alignedData;
92 m_size = n; 94 m_size = n;
93 isAllocationGood = true; 95 isAllocationGood = true;
94 zero(); 96 zero();
95 } else { 97 } else {
96 extraAllocationBytes = 98 // always allocate extra after the first alignment failure.
97 alignment; // always allocate extra after the first alignment failu re. 99 extraAllocationBytes = alignment;
98 WTF::Partitions::fastFree(allocation); 100 WTF::Partitions::fastFree(allocation);
99 } 101 }
100 } 102 }
101 } 103 }
102 104
103 T* data() { return m_alignedData; } 105 T* data() { return m_alignedData; }
104 const T* data() const { return m_alignedData; } 106 const T* data() const { return m_alignedData; }
105 size_t size() const { return m_size; } 107 size_t size() const { return m_size; }
106 108
107 T& at(size_t i) { 109 T& at(size_t i) {
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
150 T* m_alignedData; 152 T* m_alignedData;
151 size_t m_size; 153 size_t m_size;
152 }; 154 };
153 155
154 typedef AudioArray<float> AudioFloatArray; 156 typedef AudioArray<float> AudioFloatArray;
155 typedef AudioArray<double> AudioDoubleArray; 157 typedef AudioArray<double> AudioDoubleArray;
156 158
157 } // namespace blink 159 } // namespace blink
158 160
159 #endif // AudioArray_h 161 #endif // AudioArray_h
OLDNEW
« no previous file with comments | « no previous file | third_party/WebKit/Source/platform/audio/AudioBus.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698