- add sources.
[platform/framework/web/crosswalk.git] / src / media / base / bitstream_buffer.h
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_