• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2014 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 PPAPI_THUNK_VIDEO_DECODER_DEV_API_H_
6 #define PPAPI_THUNK_VIDEO_DECODER_DEV_API_H_
7 
8 #include "base/memory/ref_counted.h"
9 #include "ppapi/c/dev/ppb_video_decoder_dev.h"
10 
11 namespace ppapi {
12 
13 class TrackedCallback;
14 
15 namespace thunk {
16 
17 class PPB_VideoDecoder_Dev_API {
18  public:
~PPB_VideoDecoder_Dev_API()19   virtual ~PPB_VideoDecoder_Dev_API() {}
20 
21   virtual int32_t Decode(const PP_VideoBitstreamBuffer_Dev* bitstream_buffer,
22                          scoped_refptr<TrackedCallback> callback) = 0;
23   virtual void AssignPictureBuffers(uint32_t no_of_buffers,
24                                     const PP_PictureBuffer_Dev* buffers) = 0;
25   virtual void ReusePictureBuffer(int32_t picture_buffer_id) = 0;
26   virtual int32_t Flush(scoped_refptr<TrackedCallback> callback) = 0;
27   virtual int32_t Reset(scoped_refptr<TrackedCallback> callback) = 0;
28   virtual void Destroy() = 0;
29 };
30 
31 }  // namespace thunk
32 }  // namespace ppapi
33 
34 #endif  // PPAPI_THUNK_VIDEO_DECODER_DEV_API_H_
35