• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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:
BitstreamBuffer(int32 id,base::SharedMemoryHandle handle,size_t size)17   BitstreamBuffer(int32 id, base::SharedMemoryHandle handle, size_t size)
18       : id_(id),
19         handle_(handle),
20         size_(size) {
21   }
22 
id()23   int32 id() const { return id_; }
handle()24   base::SharedMemoryHandle handle() const { return handle_; }
size()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