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 11 namespace 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. 15 class 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