1// Copyright (c) 2011 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#ifndef MEDIA_BASE_BITSTREAM_BUFFER_H_ 6#define MEDIA_BASE_BITSTREAM_BUFFER_H_ 7 8#include "base/basictypes.h" 9#include "base/memory/shared_memory.h" 10 11namespace media { 12 13// Class for passing bitstream buffers around. Does not take ownership of the 14// data. This is the media-namespace equivalent of PP_VideoBitstreamBuffer_Dev. 15class BitstreamBuffer { 16 public: 17 BitstreamBuffer(int32 id, base::SharedMemoryHandle handle, size_t size) 18 : id_(id), 19 handle_(handle), 20 size_(size) { 21 } 22 23 int32 id() const { return id_; } 24 base::SharedMemoryHandle handle() const { return handle_; } 25 size_t size() const { return size_; } 26 27 private: 28 int32 id_; 29 base::SharedMemoryHandle handle_; 30 size_t size_; 31 32 // Allow compiler-generated copy & assign constructors. 33}; 34 35} // namespace media 36 37#endif // MEDIA_BASE_BITSTREAM_BUFFER_H_ 38