OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef PPAPI_PROXY_AUDIO_BUFFER_RESOURCE_H_ | 5 #ifndef PPAPI_PROXY_AUDIO_BUFFER_RESOURCE_H_ |
6 #define PPAPI_PROXY_AUDIO_BUFFER_RESOURCE_H_ | 6 #define PPAPI_PROXY_AUDIO_BUFFER_RESOURCE_H_ |
7 | 7 |
8 #include "base/basictypes.h" | 8 #include "base/basictypes.h" |
9 #include "base/compiler_specific.h" | 9 #include "base/compiler_specific.h" |
10 #include "ppapi/proxy/ppapi_proxy_export.h" | 10 #include "ppapi/proxy/ppapi_proxy_export.h" |
11 #include "ppapi/shared_impl/resource.h" | 11 #include "ppapi/shared_impl/resource.h" |
12 #include "ppapi/thunk/ppb_audio_buffer_api.h" | 12 #include "ppapi/thunk/ppb_audio_buffer_api.h" |
13 | 13 |
14 namespace ppapi { | 14 namespace ppapi { |
15 | 15 |
16 union MediaStreamBuffer; | 16 union MediaStreamBuffer; |
17 | 17 |
18 namespace proxy { | 18 namespace proxy { |
19 | 19 |
20 class PPAPI_PROXY_EXPORT AudioBufferResource | 20 class PPAPI_PROXY_EXPORT AudioBufferResource |
21 : public Resource, | 21 : public Resource, |
22 public thunk::PPB_AudioBuffer_API { | 22 public thunk::PPB_AudioBuffer_API { |
23 public: | 23 public: |
24 AudioBufferResource(PP_Instance instance, | 24 AudioBufferResource(PP_Instance instance, |
25 int32_t index, | 25 int32_t index, |
26 MediaStreamBuffer* buffer); | 26 MediaStreamBuffer* buffer); |
27 | 27 |
28 virtual ~AudioBufferResource(); | 28 ~AudioBufferResource() override; |
29 | 29 |
30 // PluginResource overrides: | 30 // PluginResource overrides: |
31 virtual thunk::PPB_AudioBuffer_API* AsPPB_AudioBuffer_API() override; | 31 thunk::PPB_AudioBuffer_API* AsPPB_AudioBuffer_API() override; |
32 | 32 |
33 // PPB_AudioBuffer_API overrides: | 33 // PPB_AudioBuffer_API overrides: |
34 virtual PP_TimeDelta GetTimestamp() override; | 34 PP_TimeDelta GetTimestamp() override; |
35 virtual void SetTimestamp(PP_TimeDelta timestamp) override; | 35 void SetTimestamp(PP_TimeDelta timestamp) override; |
36 virtual PP_AudioBuffer_SampleRate GetSampleRate() override; | 36 PP_AudioBuffer_SampleRate GetSampleRate() override; |
37 virtual PP_AudioBuffer_SampleSize GetSampleSize() override; | 37 PP_AudioBuffer_SampleSize GetSampleSize() override; |
38 virtual uint32_t GetNumberOfChannels() override; | 38 uint32_t GetNumberOfChannels() override; |
39 virtual uint32_t GetNumberOfSamples() override; | 39 uint32_t GetNumberOfSamples() override; |
40 virtual void* GetDataBuffer() override; | 40 void* GetDataBuffer() override; |
41 virtual uint32_t GetDataBufferSize() override; | 41 uint32_t GetDataBufferSize() override; |
42 virtual MediaStreamBuffer* GetBuffer() override; | 42 MediaStreamBuffer* GetBuffer() override; |
43 virtual int32_t GetBufferIndex() override; | 43 int32_t GetBufferIndex() override; |
44 virtual void Invalidate() override; | 44 void Invalidate() override; |
45 | 45 |
46 // Buffer index | 46 // Buffer index |
47 int32_t index_; | 47 int32_t index_; |
48 | 48 |
49 MediaStreamBuffer* buffer_; | 49 MediaStreamBuffer* buffer_; |
50 | 50 |
51 DISALLOW_COPY_AND_ASSIGN(AudioBufferResource); | 51 DISALLOW_COPY_AND_ASSIGN(AudioBufferResource); |
52 }; | 52 }; |
53 | 53 |
54 } // namespace proxy | 54 } // namespace proxy |
55 } // namespace ppapi | 55 } // namespace ppapi |
56 | 56 |
57 #endif // PPAPI_PROXY_AUDIO_BUFFER_RESOURCE_H_ | 57 #endif // PPAPI_PROXY_AUDIO_BUFFER_RESOURCE_H_ |
OLD | NEW |