diff options
author | ralphl@chromium.org <ralphl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-03-16 19:54:34 +0000 |
---|---|---|
committer | ralphl@chromium.org <ralphl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-03-16 19:54:34 +0000 |
commit | 839807ce1e6e42917b330cc394ce938aa9ddd065 (patch) | |
tree | 618bc492650f10f52e70e0f74059a9dd9327f6f1 /media/base/data_buffer.cc | |
parent | d56bcd21c5842c72ec0a8cd14c910e1dd4ed7048 (diff) | |
download | chromium_src-839807ce1e6e42917b330cc394ce938aa9ddd065.zip chromium_src-839807ce1e6e42917b330cc394ce938aa9ddd065.tar.gz chromium_src-839807ce1e6e42917b330cc394ce938aa9ddd065.tar.bz2 |
Buffer interface is now uint8*. Slight change to way data buffers are created. Caller passes no parameters to the
constructor of a data buffer now. GetWritableData() method is responsible for allocating memory.
Review URL: http://codereview.chromium.org/46015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11760 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/base/data_buffer.cc')
-rwxr-xr-x | media/base/data_buffer.cc | 33 |
1 files changed, 17 insertions, 16 deletions
diff --git a/media/base/data_buffer.cc b/media/base/data_buffer.cc index cdad4d7..b88790f 100755 --- a/media/base/data_buffer.cc +++ b/media/base/data_buffer.cc @@ -7,24 +7,17 @@ namespace media { -DataBuffer::DataBuffer(char* data, size_t buffer_size, size_t data_size, - const base::TimeDelta& timestamp, - const base::TimeDelta& duration) - : data_(data), - buffer_size_(buffer_size), - data_size_(data_size) { - DCHECK(data); - DCHECK(buffer_size >= 0); - DCHECK(data_size <= buffer_size); - SetTimestamp(timestamp); - SetDuration(duration); +DataBuffer::DataBuffer() + : data_(NULL), + buffer_size_(0), + data_size_(0) { } DataBuffer::~DataBuffer() { delete [] data_; } -const char* DataBuffer::GetData() const { +const uint8* DataBuffer::GetData() const { return data_; } @@ -32,15 +25,23 @@ size_t DataBuffer::GetDataSize() const { return data_size_; } -char* DataBuffer::GetWritableData() { +uint8* DataBuffer::GetWritableData(size_t buffer_size) { + if (buffer_size > buffer_size_) { + delete [] data_; + data_ = new uint8[buffer_size]; + if (!data_) { + NOTREACHED(); + buffer_size = 0; + } + buffer_size_ = buffer_size; + } + data_size_ = buffer_size; return data_; } -size_t DataBuffer::GetBufferSize() const { - return buffer_size_; -} void DataBuffer::SetDataSize(size_t data_size) { + DCHECK(data_size <= buffer_size_); data_size_ = data_size; } |