diff options
Diffstat (limited to 'webrtc/common_video/plane.cc')
-rw-r--r-- | webrtc/common_video/plane.cc | 80 |
1 files changed, 0 insertions, 80 deletions
diff --git a/webrtc/common_video/plane.cc b/webrtc/common_video/plane.cc deleted file mode 100644 index e0bbba10ba..0000000000 --- a/webrtc/common_video/plane.cc +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. - * - * Use of this source code is governed by a BSD-style license - * that can be found in the LICENSE file in the root of the source - * tree. An additional intellectual property rights grant can be found - * in the file PATENTS. All contributing project authors may - * be found in the AUTHORS file in the root of the source tree. - */ - -#include "webrtc/common_video/plane.h" - -#include <string.h> // memcpy - -#include <algorithm> // swap - -namespace webrtc { - -// Aligning pointer to 64 bytes for improved performance, e.g. use SIMD. -static const int kBufferAlignment = 64; - -Plane::Plane() - : allocated_size_(0), - plane_size_(0), - stride_(0) {} - -Plane::~Plane() {} - -int Plane::CreateEmptyPlane(int allocated_size, int stride, int plane_size) { - if (allocated_size < 1 || stride < 1 || plane_size < 1) - return -1; - stride_ = stride; - if (MaybeResize(allocated_size) < 0) - return -1; - plane_size_ = plane_size; - return 0; -} - -int Plane::MaybeResize(int new_size) { - if (new_size <= 0) - return -1; - if (new_size <= allocated_size_) - return 0; - rtc::scoped_ptr<uint8_t, AlignedFreeDeleter> new_buffer( - static_cast<uint8_t*>(AlignedMalloc(new_size, kBufferAlignment))); - if (buffer_.get()) { - memcpy(new_buffer.get(), buffer_.get(), plane_size_); - } - buffer_.reset(new_buffer.release()); - allocated_size_ = new_size; - return 0; -} - -int Plane::Copy(const Plane& plane) { - if (MaybeResize(plane.allocated_size_) < 0) - return -1; - if (plane.buffer_.get()) - memcpy(buffer_.get(), plane.buffer_.get(), plane.plane_size_); - stride_ = plane.stride_; - plane_size_ = plane.plane_size_; - return 0; -} - -int Plane::Copy(int size, int stride, const uint8_t* buffer) { - if (MaybeResize(size) < 0) - return -1; - memcpy(buffer_.get(), buffer, size); - plane_size_ = size; - stride_ = stride; - return 0; -} - -void Plane::Swap(Plane& plane) { - std::swap(stride_, plane.stride_); - std::swap(allocated_size_, plane.allocated_size_); - std::swap(plane_size_, plane.plane_size_); - buffer_.swap(plane.buffer_); -} - -} // namespace webrtc |